Arraylists dúvida

2 respostas
M

Oi,
Tenho uma classe A que após processamento com outras classes tem 3 ArrayLists de Strings, todos com o mesmo length.
De referir que a primeira posição de cada um dos ArrayLists corresponde a uma mesma entidade, a 2ª posição a mesma coisa e assim por diante.

O meu objectivo é criar objectos de uma outra classe em que obj1 tem os atributos (Strings) armazenados no indice 1 dos 3 arrays e assim por diante…

como é que tendo os 3 arraylists eu posso percorre-los de forma a fazer o que quero?? Tinha que percorre-los em simultaneo (pelo indice como se foosse um array), mas aqui tem de ser um iterartor e só o posso associar a um arraylist de cada vez certo??

Obrigado

MP

2 Respostas

T

marco perez:
Oi,
Tenho uma classe A que após processamento com outras classes tem 3 ArrayLists de Strings, todos com o mesmo length.
De referir que a primeira posição de cada um dos ArrayLists corresponde a uma mesma entidade, a 2ª posição a mesma coisa e assim por diante.

O meu objectivo é criar objectos de uma outra classe em que obj1 tem os atributos (Strings) armazenados no indice 1 dos 3 arrays e assim por diante…

como é que tendo os 3 arraylists eu posso percorre-los de forma a fazer o que quero?? Tinha que percorre-los em simultaneo (pelo indice como se foosse um array), mas aqui tem de ser um iterartor e só o posso associar a um arraylist de cada vez certo??

Obrigado

MP

Use pelo índice; não precisa ser pelo iterador (que, como você mesmo disse, só pode ser associado a um determinado arraylist).

De qualquer modo, seria interessante remodelar a classe A para que ela criasse 1 único ArrayList, mas em vez de ser ArrayList fosse ArrayList onde Entidade contém os campos de cada um dos arraylists que você criou em paralelo. Aí você não precisaria trabalhar dobrado.

xandevieira
Se os tres ArrayLists tem o mesmo tamanho faça um for num deles: ex.
for (int i = 0; i < arrayList1.size(); i++) {
String x1 = arrayList1(i); 
String x2 = arrayList2(i);
String x4 = arrayList3(i);
}
Criado 28 de maio de 2009
Ultima resposta 28 de mai. de 2009
Respostas 2
Participantes 3