Foros aprenderaprogramar.com

Aprender a programar => Aprender a programar desde cero => Mensaje iniciado por: momo en 11 de Septiembre 2014, 19:57

Título: CU00665B crear ArrayList de Strings y recorrerlos en java
Publicado por: momo en 11 de Septiembre 2014, 19:57
Bueno ahí esta la entrega numero CU00665B Espero que haya cumplido con lo requerido.. si tengo algún error  me lo dicen

Muchas Gracias...


Citar
/*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.*/
Citar
ENTRADA TECLADO
Código: [Seleccionar]
import java.util.Scanner;
public class EntradaTeclado
{
    String entradaTeclado;
   
public EntradaTeclado()//Inicializamos el Constructor
{
    entradaTeclado="";
    solicitarEntrada();// Esto es una llamada al metodo interno, Al crear un objeto ejecutamos el método
}
public void solicitarEntrada()
{
    Scanner entradaEscaner=new Scanner(System.in);
    entradaTeclado=entradaEscaner.nextLine();
}

public String getEntrada()

    return entradaTeclado;
}

}//Fin clase
Citar
LISTA CANTANTE FAMOSO
Código: [Seleccionar]
import java.util.ArrayList;
public class ListaCantanteFamoso
{
    private String nombreCantante;//Establecemos Atributo
    private ArrayList<String>listaCantanteFamoso;//Declaramos Arrays que contienen objetos String

    public  ListaCantanteFamoso(String nombre)//Inicializamos el constructor , y crea una lista de nombre vacia
    {
        nombreCantante=nombre;
        listaCantanteFamoso=new ArrayList<String>(); //Creamos el objeto de tipo ArrayList
        listaCantanteFamoso.add("Romeo Santos");// Cantantes a Mostrar
        listaCantanteFamoso.add("Avici");
        listaCantanteFamoso.add("Chino y Nacho");
    }//Cierre Constructor

    public void addNombre(String valorNombre)
    {listaCantanteFamoso.add(valorNombre);
    }//Cierre Metodo addNombre
    public String getNombre(int posicion)//Metodo para extraer un objeto de sierta posicion
    {
        if(posicion>=0&&posicion<listaCantanteFamoso.size())
        {
            return listaCantanteFamoso.get(posicion);
        }else
        {
            return " No Existe Nombre Para la Posicion Solicitada";
        }
    }//Cierre Metodo getNombre;
    public int  getTamanho()
    {
        return listaCantanteFamoso.size();
    }
    public void removerNombre(int posicion)
    {
    if(posicion>=0&&posicion<listaCantanteFamoso.size())
        {
            listaCantanteFamoso.remove(posicion);
        }else
        {}//Else Vacio. No Existe Nombre para la posicion Solicitada...
           
    }//Cierre Metodo removeNombre

     
}
Citar
TEST LISTA CANTANTE FAMOSO
Código: [Seleccionar]
public class TestListaCantanteFamoso
{
    public static void main(String[] args)
    {
        System.out.println(" Por Favor Introdusca El Primer Cantante");
        EntradaTeclado primeraEntrada = new EntradaTeclado();
        System.out.println(" Por Favor Introdusca El Segundo Cantante");
        EntradaTeclado segundaEntrada = new EntradaTeclado();
        System.out.println(" Por Favor Introdusca El Tercer Cantante");
        EntradaTeclado terceraEntrada = new EntradaTeclado();
        System.out.println("Muchas Gracias Por Agregar a estos Cantantes");
        System.out.println("");
        ListaCantanteFamoso lista =new ListaCantanteFamoso("");//
        lista.addNombre(primeraEntrada.getEntrada());
        lista.addNombre(segundaEntrada.getEntrada());
        lista.addNombre(terceraEntrada.getEntrada());
        System.out.println("El Tamanho De La Lista Es Aproximadamente de " + lista.getTamanho() + " Elementos");
        for(int i=0;i<lista.getTamanho();i++)
        {
            System.out.println("Entrada " + (i+1)+" : " + lista.getNombre(i) );
       
        }
        System.out.println("Muchas Gracias ");
    }//Cierre Main
}// Cierre Class

Título: Re:CU00665B
Publicado por: toni_apr en 11 de Septiembre 2014, 22:15
Tu ejercicio está perfecto, y funciona a la perfección.
Aprovecho para comentar:
En la clase

TestListaCantanteFamoso

Escribes en una línea

lista.addNombre(primeraEntrada.getEntrada());

Un ejemplo típico del código compacto y eficiente encadenando Objeto (lista), método (addNombre), otro Objeto (primeraEntrada) y otro método (getEntrada)
Trabajas con dos objetos y dos métodos en la misma línea.

Enhorabuena, tienes clara la filosofía de conectar los métodos que devuelven un valor. :)

Aparte, tengo que decirte que la instrucción

System.out.println("El Tamanho De La Lista Es Aproximadamente de " + lista.getTamanho() + " Elementos");

Puede dar lugar a engaño. Tu lista de cantantes tiene un tamaño exacto, parece que estás diciendo que no estás seguro.
Cuando lo tengas claro, di este valor es exacto, quien lea tu mensaje no se parará a dudar ¿el valor es correcto o no?

Saludos.
Título: Re:CU00665B
Publicado por: momo en 11 de Septiembre 2014, 23:37
Muchas Gracias Toni_apr

Le Estoy Poniendo empeño en aprender este lenguaje  un Saludos ...