Foros aprenderaprogramar.com
		Aprender a programar => C, C++, C#, Java, Visual Basic, HTML, PHP, CSS, Javascript, Ajax, Joomla, MySql y más => Mensaje iniciado por: paramonso en 21 de Septiembre 2018, 08:58
		
			
			- 
				Hola. Dejo el Ejercicio CU00665B del tutorial básico de programación Java.
 Clase ArrayList del api Java. Métodos add, size, etc. Concepto de clase genérica o parametrizada.
 
 
 Clase  ListaCantantesFamosos
 
 //Ejemplo de uso ArrayList aprenderaprogramar.com
 import java.util.ArrayList; //Los import deben ir siempre al principio antes de declarar la clase
 //Esta clase representa una lista de nombres manejada con la clase ArrayList de Java
 public class ListaCantantesFamosos {
 private ArrayList<String> listaCantantes; //Declaramos un ArrayList que contiene objetos String
 
 public ListaCantantesFamosos (String nombre) {    //Constructor: crea una lista de nombres vacía
 listaCantantes = new ArrayList<String>(); //Creamos el objeto de tipo ArrayList
 listaCantantes.add("Antonio Machin");
 listaCantantes.add("Jorge Negrete");
 listaCantantes.add("Antoñita Pañuela");
 } //Cierre del constructor
 
 public void addNombre (String valor_nombre) { listaCantantes.add (valor_nombre); } //Cierre del método
 
 public String getNombre (int posicion) { //Método
 if (posicion >= 0 && posicion < listaCantantes.size() ) {
 return listaCantantes.get(posicion); }
 else { return "No existe nombre para la posición solicitada";}
 } //Cierre del método
 
 public int getTamaño () { return listaCantantes.size(); } //Cierre del método
 
 public void removeNombre (int posicion) {  //Método
 if (posicion >= 0 && posicion < listaCantantes.size() ) {
 
 listaCantantes.remove(posicion); }
 
 else { } //else vacío. No existe nombre para la posición solicitada, no se ejecuta ninguna instrucción
 } //Cierre del método removeNombre
 } //Cierre de la clase
 
 
 Clase EntradaTeclado
 
 
 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
 
 } //Cierre de la clase
 
 Clase TestListaCantantesFamosos
 // Aquí el test con el método main ejemplo aprenderaprogramar.com
 public class TestListaCantantesFamosos {
 public static void main (String [ ] args) {
 System.out.println ("Empezamos el programa");
 
 System.out.println ("Por favor introduzca nombre 1:");   EntradaDeTeclado entrada1 = new EntradaDeTeclado();
 System.out.println ("Por favor introduzca nombre 2:");   EntradaDeTeclado entrada2 = new EntradaDeTeclado();
 System.out.println ("Gracias");
 
 ListaCantantesFamosos lista1 = new ListaCantantesFamosos("Nombres introducidos por usuario");
 lista1.addNombre (entrada1.getEntrada() );
 lista1.addNombre (entrada2.getEntrada() );
 
 System.out.println ("La lista ha quedado formada por " + lista1.getTamaño() + " elementos");
 for(int i =0 ; i<=lista1.getTamaño()-1;i++){
 System.out.println ("Elemento "+(i+1)+": " + lista1.getNombre(i) );
 }
 } //Cierre del main
 
 } //Cierre de la clase
 
 Gracias. ;)
- 
				Buenas, todo correcto. Muchos programadores prefieren no usar eñes en nombre de variables o métodos porque a la larga puede traer problemas, pero en teoría con Java no debería haberlos.
 
 Salu2