Foros del Web » Programación para mayores de 30 ;) » Java »

problemas con ArrayList

Estas en el tema de problemas con ArrayList en el foro de Java en Foros del Web. Hola, estoy creando un programa el cual tiene que leer un ArrayList, para eso utilizo este codigo: Iterator iter = new datos.iterator(); String res = ...
  #1 (permalink)  
Antiguo 08/11/2011, 15:07
 
Fecha de Ingreso: marzo-2011
Mensajes: 106
Antigüedad: 13 años, 8 meses
Puntos: 4
problemas con ArrayList

Hola, estoy creando un programa el cual tiene que leer un ArrayList, para eso utilizo este codigo:

Iterator iter = new datos.iterator();

String res = "";

while(iter.hasMoreElements()){

//res = (String) iter.next();
}

System.out.println(res);

El problema es que me da un error de ejecucion, en la parte que esta comentada
Si en lugar de eso pongo directamente

System.out.println((String) iter.next());

Si que me muestra el resultado por pantalla.
  #2 (permalink)  
Antiguo 08/11/2011, 15:43
Avatar de Ronruby  
Fecha de Ingreso: julio-2008
Ubicación: 18°30'N, 69°59'W
Mensajes: 4.879
Antigüedad: 16 años, 4 meses
Puntos: 416
Respuesta: problemas con ArrayList

Si estas utilizando Java >= 5, es mejor usar genericos + for each.

Código Javascript:
Ver original
  1. List<String> lista = new ArrayList<String>();
  2. lista.add("A");
  3. lista.add("B");
  4. lista.add("C");
  5. for(String elemento : lista) {
  6.   System.out.println(elemento);
  7. }

Si te es imposible hacerlo de esa forma, cual es el error que te muestra al ejecutarlo?
  #3 (permalink)  
Antiguo 09/11/2011, 05:05
Avatar de afrika026  
Fecha de Ingreso: junio-2011
Mensajes: 85
Antigüedad: 13 años, 5 meses
Puntos: 19
Respuesta: problemas con ArrayList

No estas recorriendo bien el ArrayList. Además estas haciendo mal el Cast a string, te paso el codigo correcto, encima no tenes que poner new en el Iterator:

Iterator iter = datos.iterator();

while (iter.hasNext()){

res = iter.next().toString; //asi se realiza el cast a string
System.out.println(res); //imprime el valor a medida que avanza el iterator
}

Asegurate de haber inicializado la variable arrayList "datos", en el caso que no los
hayas hecho la inicializas así: ArrayList datos = new ArrayList();
Y luego para agregar datos al mismo se realiza de la siguiente manera:
datos.add("pepe");
  #4 (permalink)  
Antiguo 09/11/2011, 05:41
Avatar de Xerelo  
Fecha de Ingreso: mayo-2009
Mensajes: 2.175
Antigüedad: 15 años, 7 meses
Puntos: 306
Respuesta: problemas con ArrayList

Faraday28, la mejor forma es la que dice Ronruby.

Cita:
Iniciado por afrika026
Asegurate de haber inicializado la variable arrayList "datos", en el caso que no los
hayas hecho la inicializas así: ArrayList datos = new ArrayList();
Ojo, la inicialización que propones no es correcta, si no indicas el génerico <String> estarás obligado a hacer cast si quieres utilizar los objetos. Si no haces eso List te devuelve Object, por eso habría que hacer cast.

En el caso de String te funciona porque el toString de una String devuelve el contenido de la String.
__________________
Cada vez que solucionas los problemas de alguien que no se esfuerza, piensa en que el día de mañana puede llegar a ser tu compañero de trabajo, o peor, tu jefe.

Etiquetas: arraylist, string
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 21:14.