Autor Tema: Ejercicio sobre ArrayList de Java crear una lista de nombres (String) CU00665B  (Leído 6706 veces)

Amateu

  • Sin experiencia
  • *
  • APR2.COM
  • Mensajes: 8
    • Ver Perfil
Me he permitido utilizar el método entrada de teclado de la lección. No la incluyo, pero si hace falta la añado. Estas son las otras dos clases que he utilizado

Código: [Seleccionar]
/**
 * Ejercicio CU00665B
 * Crea una lista con tres cantantes famosos
 * Clase 1/3
 *
 * @author Amateu
 * @version 0
 */
import java.util.ArrayList;


public class ListaCantantesFamosos{
    private ArrayList<String> listadeCantantes; //Declaramos un ArrayList que contiene objetos String
    public ListaCantantesFamosos () {    //Constructor: crea una lista de nombres vacía
        listadeCantantes = new ArrayList<String>(); //Creamos el objeto de tipo ArrayList
        listadeCantantes.add ("LLuis LLach");
        listadeCantantes.add ("Jose Luis Perales");
        listadeCantantes.add ("Manolo Escobar");
    } //Cierre del constructor
    public void addNombre (String valor_nombre) {
        listadeCantantes.add (valor_nombre); } //Cierre del método addNombre
    public String getNombre (int posicion) { //Método
        if (posicion >= 0 && posicion < listadeCantantes.size() ) {
            return listadeCantantes.get(posicion); }
        else { return "No existe nombre de cantante famoso para la posición solicitada";}
    } //Cierre del método getNombre
    public int getTamaño () { return listadeCantantes.size(); } //Cierre del método getTamaño
    public void removeNombre (int posicion) {  //Método
        if (posicion >= 0 && posicion < listadeCantantes.size() ) {
            listadeCantantes.remove(posicion); }
        else { }
    } //Cierre del método removeNombre
} //Cierre de la clase

Código: [Seleccionar]
/**
 * Ejercicio CU00665B
 * Programa main que añade por teclado dos cantantes a la lista de cantantes famosos
 * Clase 2/3
 *
 * @author Amateu
 * @version 0
 */
public class TestListaCantantesFamosos
{
     public static void main (String [ ] args) {

        ListaCantantesFamosos listaCantantes = new ListaCantantesFamosos();
         
        System.out.println ("Ud. va a añadir a la lista de Cantantes Famosos dos nombres más.");   
        System.out.println ("Por favor introduzca un nombre de cantante a añadir:");
        EntradaDeTeclado cantante1 = new EntradaDeTeclado();
        System.out.println ("Por favor introduzca otro nombre de cantante:");
        EntradaDeTeclado cantante2 = new EntradaDeTeclado();
        System.out.println ("Gracias");
       
        listaCantantes.addNombre (cantante1.getEntrada() );
        listaCantantes.addNombre (cantante2.getEntrada() );
       
        System.out.println ("La lista ha quedado formada por " + listaCantantes.getTamaño() + " nombres de cantantes:");

        for (int i = 0; i < listaCantantes.getTamaño(); i++){
           System.out.println ("Cantante nº " + (i+1) +": " + listaCantantes.getNombre(i) );
        }
   
    } //Cierre del main
}

Gracias de antemano.
« Última modificación: 24 de Abril 2016, 13:32 por Alex Rodríguez »

Alex Rodríguez

  • Moderador Global
  • Experto
  • *******
  • Mensajes: 2050
    • Ver Perfil
Re:Ejercicio sobre ArrayList de Java. CU00665B
« Respuesta #1 en: 21 de Abril 2016, 08:22 »
Hola Amateu, para poder revisar los ejercicios necesitamos todo el código que se haya utilizado para poder compilarlo (incluso aunque se trate del mismo código que se dé en la lección o incluso si se trata del mismo código que se ha utilizado en otro ejercicio previo) de ese modo podemos compilar directamente el mismo código sin tener que recurrir a búsquedas que harían más difícil la revisión y más fácil que hubiera errores o malosentendidos.

Saludos

Amateu

  • Sin experiencia
  • *
  • APR2.COM
  • Mensajes: 8
    • Ver Perfil
Re:Ejercicio sobre ArrayList de Java. CU00665B
« Respuesta #2 en: 22 de Abril 2016, 13:34 »
Añado la clase que faltaba

Código: [Seleccionar]
/**
 * Ejercicio CU00665B
 * clase heredada de aprenderaprogramar.com
 * que utiliza el programa main para coger las entradas por teclado
 * Clase 3/3
 *
 * @author aprenderaprogramar.com
 *
 */
import java.util.Scanner; //Importación del código de la clase Scanner desde la biblioteca Java

// Definimos una clase EntradaDeTeclado aprenderaprogramar.com

public class EntradaDeTeclado {
    private String entradaTeclado; //Variable de instancia (campo) de la clase
    public EntradaDeTeclado ()  { //Constructor
        entradaTeclado="";
        pedirEntrada(); //Esto es una llamada a un método interno. Al crear un objeto ejecutamos el método
    } //Cierre del constructor
    public void pedirEntrada ()  {  //Método de la clase         
        Scanner entradaEscaner = new Scanner (System.in);
        entradaTeclado = entradaEscaner.nextLine ();     } //Cierre del método pedirEntrada
    public String getEntrada () { return entradaTeclado; } //Cierre del método getEntrada
    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;  //Caso de que no se detecte ningún espacio devolvemos lo que haya
    } //Cierre del método getPrimeraPalabra
    public int getLongitud ()  {  //Método de la clase
        return entradaTeclado.length();
    } //Cierre del método getLongitud

} //Cierre de la clase

y disculpadme.

Alex Rodríguez

  • Moderador Global
  • Experto
  • *******
  • Mensajes: 2050
    • Ver Perfil
Hola Amateu el ejercicio está muy bien resuelto.

Recomendamos no usar eñes ni tildes como nombres de métodos o de clases. getTamaño sería getTamanno. Aunque Java lo admita lo recomendamos para no tener problemas a posteriori.

Saludos

 

Sobre la educación, sólo puedo decir que es el tema más importante en el que nosotros, como pueblo, debemos involucrarnos.

Abraham Lincoln (1808-1865) Presidente estadounidense.

aprenderaprogramar.com: Desde 2006 comprometidos con la didáctica y divulgación de la programación

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".