Autor Tema: Solucion al ejercicio Java CU00665B sobre Clase ArrayList en Java.  (Leído 2492 veces)

CarlosAndres21

  • Sin experiencia
  • *
  • APR2.COM
  • Mensajes: 12
    • Ver Perfil
 
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.
 

Solucion:

Clase ListaCantantesFamosos

Código: [Seleccionar]
import java.util.*;


public class ListaCantantesFamosos{
private String nombreDeLaLista;
private ArrayList<String> listadenombres;

public ListaCantantesFamosos (String nombre){
nombreDeLaLista=nombre;
listadenombres=new ArrayList<String>();
}
public void addCantante1(String Cantantes){
listadenombres.add("Dany Worsnop");
listadenombres.add("Vic Fuentes");
listadenombres.add("Oliver Sykes");}

public void addNombre(String valor_nombre){listadenombres.add(valor_nombre);}

public String getNombre(int posicion){if(posicion>=0 && posicion<listadenombres.size()){return listadenombres.get(posicion);}
else{return "No existe nombre para la posicion solicitada";}
}
}             




Clase TestListaCantantesFamosos


Código: [Seleccionar]
import java.util.*;


public class TestListaCantantesFamosos{
public static void main(String []args){
System.out.println("Empezamos el programa");

System.out.println("Introduzca el nombre de dos cantantes famosos");

EntradaDeTeclado entrada4=new EntradaDeTeclado();
EntradaDeTeclado entrada5=new EntradaDeTeclado();

System.out.println("Gracias");

ListaCantantesFamosos lista1=new ListaCantantesFamosos("Cantantes");

lista1.addCantante1("");


lista1.addNombre(entrada4.getEntrada());
lista1.addNombre(entrada5.getEntrada());

System.out.println("ARTISTAS FAMOSOS"+"\n"+"1."+lista1.getNombre(0)+"\n"+"2."+lista1.getNombre(1)+"\n"+"3."+lista1.getNombre(2)+"\n"+"4."+lista1.getNombre(3)+"\n"+"5."+lista1.getNombre(4));

}
}


Clase EntradaDeTeclado



Código: [Seleccionar]
import java.util.Scanner;
//Importacion del codigo de la clase Scanner desde la bibliotaca 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 metodo interno.Al crear un objeto ejecutamos ep metodo
}//Cierre del constructor


public void pedirEntrada(){//Metodo de la clase

      Scanner entradaEscaner=new Scanner(System.in);
 
  entradaTeclado=entradaEscaner.nextLine();}//Cierre del metodo pedirEntrada
 
 
 
 
    public  String getEntrada(){
return entradaTeclado;}//Cierre del metodo getEntrada



public String getPrimerPalabra(){
/*IMPORTANTE: EN JAVA LOS OBJETOS NO SE PUEDEN COMPARAR USANDO== POR ESO ESTO NO FUNCIONARA

   if(entradaTeclado.substring(0,1)=="j"{
   system.out.println("Hemos detectado una j");}
   else{system.out.println("Mira esto:"entradaTeclado.substring(0,1));}*/

for(int i=0;
     i<entradaTeclado.length()-i;
i++){
if (entradaTeclado.substring(i,i+1).equals("   ") ){
//IMPORTANTISIMO: COMPARAMOS CON EQUALS
return entradaTeclado.substring(0,i+1);
  }
  }return entradaTeclado;//Caso de que no se detecte un ningun espacio devolvemos lo que haya
  }//Cierre del metodo getPrimerPalabra
 
 
 
  public int getLongitud(){
  //Metodo de la clase
  return entradaTeclado.length();
  }//Cierre del metodo getLongitud
                      }//Cierre de la clase}

 

Mario R. Rancel

  • Administrador
  • Experto
  • ********
  • APR2.COM
  • Mensajes: 1978
    • Ver Perfil
Re:Solucion al ejercicio Java CU00665B sobre Clase ArrayList en Java.
« Respuesta #1 en: 03 de Diciembre 2015, 08:32 »
Buenos días Carlos Andrés

En tu clase EntradaDeTeclado tienes un método getPrimerPalabra() pero si intento usarlo no funciona.

Por ejemplo:

Código: [Seleccionar]
            EntradaDeTeclado entrada4=new EntradaDeTeclado();
            EntradaDeTeclado entrada5=new EntradaDeTeclado();
            System.out.println ("La primera palabra de la entrada es " + entrada5.getPrimerPalabra());

Empezamos el programa
Introduzca el nombre de dos cantantes famosos
juan
andres carlos
La primera palabra de la entrada es andres carlos
Gracias
ARTISTAS FAMOSOS
1.Dany Worsnop
2.Vic Fuentes
3.Oliver Sykes
4.juan
5.andres carlos


No debes tener código que no funcione. En estos ejercicios debes de revisar todo el código que utilices y comprobar que funcione. Además, dado que se trata de ejercicios pequeños, no es necesario incluir métodos ni clases complementarias que no se utilicen, sino simplemente el código necesario para el ejercicio.

Deberías revisar esto en este ejercicio y tenerlo en cuenta para futuros ejercicios

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