Ayuda con un ArrayList

Disculpen pero alguien sabe como semete un ArrayList dentro del otro y mandarlo a llamar en una clase principal y luego poner como atributos un ArrayList que contenga otro y como crear un metodo donde los pueda leer la informacion?????

Comentarios

Opciones de visualización de comentarios

Seleccione la forma que prefiera para mostrar los comentarios y haga clic en «Guardar las opciones» para activar los cambios.
Imagen de neko069

Imagen de rodrigo salado anaya

ArrayList

Mejor ocupa List (http://download.oracle.com/javase/1.4.2/docs/api/java/util/List.html), pero bueno en fin, espero el ejemplo te ayude un poco.

    public static void main(String args[]) {
       ArrayList arrayList_1 = new ArrayList();
        ArrayList arr_1 = new ArrayList();
        arr_1.add("Cosa");
        arr_1.add("Perro");
        arr_1.add("Gato");
       
        arrayList_1.addAll(arr_1);
       
        printArrayList(arr_1);
    }
   
    static void printArrayList(ArrayList arrL){
        for(Object s: arrL){
            System.out.println(s);
        }
    }
run:
Cosa
Perro
Gato

Re: ArrayList

Pero List cómo tal es una interfaz, y por lo tanto necesitas una implementación. O al menos eso es lo que me dicen los IDE :P.

Existen varias implementaciones, mi preferida es la ArrayList... del modo en lo que has usado nos permite (creo desde Java 5) hacer algo cómo:

//Entre el diamante, puedes poner el tipo de
//objetos que recibirás en la lista
List<String> miLista = new ArrayList<String>();
miLista.add("Mono");
miLista.add("Perico");
miLista.add("Pollo");
//Luego lo podemos iterar sin necesidad de casts
for(String s : miLista){
----System.out.println("s");
}

Esto es sólo para aclarar que se puede forzar el tipo de lista (puede ser una Lista de strings, enteros, boolean, etc, eso sí, tiene que ser una clase la encargada del tipo). Así también cómo aclarar que List es una interfaz, podemos usar diferentes según nos parezca.

Ahora, respecto a lo del post. Veamos si entendí:

Disculpen pero alguien sabe como semete un ArrayList dentro del otro y mandarlo a llamar en una clase principal y luego poner como atributos un ArrayList que contenga otro y como crear un metodo donde los pueda leer la informacion?????

Pues poner un ArrayList dentro de otro es sencillo, aunque no lo veo del todo óptimo, habría que ver lo que necesitas hacer, pero sin duda es más que posible:

//Supongamos que existe una clase Animal
List<Animal> animalesBosque = new ArrayList<Animal>();
animalesBosque.add(new Animal("Oso"));
animalesBosque.add(new Animal("Ardilla"));

List<Animal> animalesSabana = new ArrayList<Animal>();
animalesSabana.add(new Animal("Zebra"));
animalesSabana.add(new Animal("León"));

//Una vez creadas las listas podemos meterlas en otra lista
List<List<Animal>> animalesPorZonas = new ArrayList<List<Animal>>();
animalesPorZonas.add(animalesBosque);
animalesPorZonas.add(animalesSabana);

Para lo de leer la información te recomiendo un repaso de POO/OOP. No es difícil (aunque no entiendo bien tu problema).

Imagen de gelo1002

Es posible agregar una parte

Es posible agregar una parte de la ListaReportTra en un item de la ListaReport aque, no se me el tecnicismo , bueno la clase que esta entre los <> no tengo las mismas estructuras en sus set() y los get() ???

private List ListaReport = new ArrayList();

private List ListaReportTra = new ArrayList();

Re: Es posible agregar una parte

Creo que tienes los métodos cruzados. El método set para las listas sirve para asignar un objeto en un índice específico y el método get regresa el objeto en el índice específico. Usando mi ejemplo tenemos:

List<Animal> animalesBosque = new ArrayList<Animal>();
animalesBosque.add(new Animal("Oso"));
animalesBosque.add(new Animal("Ardilla"));
List<Animal> animalesSabana = new ArrayList<Animal>();
animalesSabana.add(new Animal("Zebra"));
animalesSabana.add(new Animal("León"));

List<List<Animal>> animalesPorZonas = new ArrayList<List<Animal>>();
animalesPorZonas.add(animalesBosque);
animalesPorZonas.add(animalesSabana);

Si a la lista "animalesPorZonas" le aplicamos el método get, podríamos tener algo cómo:

//Supongamos que uno tiene que mostrarle al usuario
//una lista que elija, por lo tanto, supongamos que "numeroQueTecleoElUsuario"
//es una variable de tipo int o un objecto de tipo Integer o Long.
List<Animal> listaQuePideElUsuario = animalesPorZonas.get(numeroQueTecleoElUsuario);

//Y ya de ahí puedes iterar la lista:
System.out.println("Imprimiendo lista de animales que has pedido:");
for(Animal a : listaQuePideElUsuario){
//En la siguiente línea de código se muestra cómo
//puedes utilizar los setters y getters de el objeto (
//o en este caso de todos los objetos de la lista.
----System.out.println("\t " + a.getNombre());
}