Autor Tema: Java ejemplo lista con ArrayList del api. Métodos de la clase ejercicio CU00665B  (Leído 1324 veces)

Pandemia

  • Avanzado
  • ****
  • APR2.COM
  • Mensajes: 258
    • Ver Perfil
Buenas aquí dejo una posible solución al ejercicio CU00665B del tutorial de programador Java.....

Citar
EJERCICIO

Crea una clase denominada ListaCantantesFamosos que al ser inicializada contenga un ArrayList con tres Strings que sean el nombre de cantantes famosos. Crea una clase test con el método main que inicialice un objeto ListaCantantesFamosos, pida dos cantantes famosos más al usuario, los añada a la lista y muestre el contenido de la lista por pantalla. Puedes comprobar si tu código es correcto consultando en los foros aprenderaprogramar.com.

CÓDIGOS

Código: [Seleccionar]
/**
 *Ejercicio CU00665B del curso de java desde cero de aprenderaprogramar.com.
 *Version 0.1.
 *Realizado por Pandemia
 */
import java.util.ArrayList;
public class ListaCantantesFamosos
{
    private String nombreDeCantantes;
    private ArrayList<String> listaDeCantantes;

    //Constructor
    public ListaCantantesFamosos (String nombre){
        nombreDeCantantes = nombre;
        listaDeCantantes = new ArrayList<String>();
    }//cierre del constructor

    //Agregar nombre a la lista
    public void addNombre (String valorNombre){listaDeCantantes.add(valorNombre);}

    //getter tamaño de la lista de cantantes
    public int getCantidadDeCantantes (){return listaDeCantantes.size();}

    //getter nombres
    public String getNombreDeCantante(int numero){return listaDeCantantes.get(numero);}
}//cierre de la clase



Código: [Seleccionar]
/**
 *Ejercicio CU00665B del curso de java desde cero de aprenderaprogramar.com.
 *Version 0.1.
 *Realizado por Pandemia
 */
public class TestListaDeCantantesFamosos
{
    public static void main (String [ ] args){
        System.out.println("inicio del programa");
        System.out.println("Por favor, introduzca el nombre del cantante numero 1: ");
        EntradaDeTeclado cantante1 = new EntradaDeTeclado();
        System.out.println("Por favor, introduzca el nombre del cantante numero 2: ");
        EntradaDeTeclado cantante2 = new EntradaDeTeclado();
        System.out.println("Gracias por su colaboración");

        ListaCantantesFamosos listadoDeCantantes = new  ListaCantantesFamosos("Cantantes Famosos");

        // Agregado de 3 cantantes.
        listadoDeCantantes.addNombre("Beyoncé");
        listadoDeCantantes.addNombre("Leiva");
        listadoDeCantantes.addNombre("Enrique Iglesias");

        // Pedido de dos nombres al usuario.
        listadoDeCantantes.addNombre (cantante1.getEntrada() );
        listadoDeCantantes.addNombre (cantante2.getEntrada() );
       
         System.out.println ("\nLa lista ha quedado formada por " + listadoDeCantantes.getCantidadDeCantantes() + " famosos");
        for (int i = 0; i < listadoDeCantantes.getCantidadDeCantantes(); i++){
            System.out.println ("\nCantante o Grupo de música " + (i +1)+ ": " + listadoDeCantantes.getNombreDeCantante(i) );
        }
    }//Cierre del main

}//Cierre de la clase



Código: [Seleccionar]
/**
 *Ejercicio CU00665B del curso de java desde cero de aprenderaprogramar.com.
 *Version 0.1.
 *Realizado por Pandemia
 */

import java.util.Scanner;

public class EntradaDeTeclado {
    private String entradaTeclado;

    //constructor
    public EntradaDeTeclado ()  {
        entradaTeclado="";
        pedirEntrada();
    } //Cierre del constructor
    //Métodos
    public void pedirEntrada ()  {           
        Scanner entradaEscaner = new Scanner (System.in);
        entradaTeclado = entradaEscaner.nextLine ();
    }//cierre de método

    public String getEntrada () { return entradaTeclado; }//cierre de método

    public String getPrimeraPalabra ()  {
        for (int i=0; i < entradaTeclado.length() - 1; i++) {
            if (entradaTeclado.substring (i, i+1).equals(" ") ) {     
                return entradaTeclado.substring(0, i+1);         }
        }
        return entradaTeclado;
    }//cierre de método

    public int getLongitud ()  { 
        return entradaTeclado.length();
    }//cierre de método
}//cierre de la clase


Saludos y gracias por vuestro tiempo..... :D
« última modificación: 06 de Septiembre 2016, 10:42 de César Krall »

César Krall

  • Moderador Global
  • Experto
  • *******
  • Mensajes: 2228
  • No vales por lo que dices, sino por lo que haces
    • Ver Perfil
    • aprenderaprogramar.com
Hola! El ejercicio pide que cuando se inicialice un objeto ListaCantantesFamosos, este contenga un ArrayList con tres Strings que sean el nombre de cantantes famosos. Eso no lo cumples en tu código.

Hay otra cosa que resulta extraña, en un objeto ListaCantantesFamosos, ¿para qué has añadido el atributo private String nombreDeCantantes;? Es decir, que no sé qué significado o para qué sirve ese atributo.

Consulta otras respuestas a este ejercicio en los foros, te serán útiles.

Saludos!
Responsable de departamento de producción aprenderaprogramar.com

 

Esto es un laboratorio de ideas...
Aprender a programar

Preguntas y respuestas

¿Cómo establecer o cambiar la imagen asociada (avatar) de usuario?
  1. Inicia sesión con tu nombre de usuario y contraseña.
  2. Pulsa en perfil --> perfil del foro
  3. Elige la imagen personalizada que quieras usar. Puedes escogerla de una galería de imágenes o subirla desde tu ordenador.
  4. En la parte final de la página pulsa el botón "cambiar perfil".