Java - Consulta ArrayList

 
Vista:

Consulta ArrayList

Publicado por Fernando (26 intervenciones) el 25/03/2007 18:19:55
Hola:
Soy nuevo en esto de la programación en JAVA y tengo unos pequeños problemas con un codigo. Basicamente lo que quiero es hacer un ArrayList de objetos tipo Celda y luego imprimirlos. El codigo es el siguiente:

import java.util.ArrayList;

class Celda {
int x;
int y;
public Celda(int x,int y){this.x=x;this.y=y;}
public void Imprimir(){
System.out.print(this.x + " " + this.y);
}
}

class Prueba{

public static void main(String []args){
ArrayList arr;
arr = new ArrayList ();
for (int i=0;i<10;i++){
Celda C;
C = new Celda(i,1);
arr.add(C);
}
for (int j=0;j<arr.size();j++){
Celda aux;
aux = new Celda();
aux = arr.get(j);
aux.Imprimir();
}
}
}

Al momento de compilar obtengo que hay un error de incopatibilidad de tipos en la linea:

aux = arrg.get(j);

Es posible, no estoy seguro, que sería mejor utilizar un arreglo de tamaño fijo , pero lo que suecede es que deseo aprender bien a manejar los ArrayList y todas sus características.
Si alguien me podría explicar cual es error y cómo podría solucionarlo se lo agredecería mucho.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Consulta ArrayList

Publicado por Gonzalo (180 intervenciones) el 25/03/2007 18:33:25
El error es el siguiente:

Cuando haces arr.get(i) te devuelve un Object porque en general un ArrayList puede contener cualquier cosa y no sabe lo que es.

Así que tú, que sí sabes que lo que hay en el ArrayList es un Celda, lo único que necesitas hacer es un cast al tipo Celda. Es decir:

aux = (Celda) arr.get(i);

-----
Una mejora que podrías hacer, sería usar un iterador en lugar de un índice:
En lugar del bucle for, usas:
Iterator it = arr.iterator();
while ( it.hasNext() ) {
····Celda aux= (Celda) it.next();
····aux.imprimir();
}
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Consulta ArrayList

Publicado por Fernando (26 intervenciones) el 25/03/2007 18:47:31
Muchas gracias Gonzalo por la respuesta, me ha sido muy util.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar