Comparar dois ArrayList ?[RESOLVIDO]

[quote=rafaelpiton][quote=lina]Oi,

Você precisa comparar os elementos deste array para qual objetivo? Remove-los? Tornar apenas 1 só lista com os números iguais?

Tchauzin![/quote]

cara preciso comparar para isso…para saber quais itens não estão iguais…

pegar os itens que nao sao iguais e enviar por email por exemplo…

[/quote]

Oi,

Pois é rapaz… estava aqui pensando pq não usar removeAll(Collection).

[code]
ArrayList
teste = new ArrayList();
teste.add(“Lina”);
teste.add(“Ferreira”);
teste.add(“OK”);

ArrayList
teste1 = new ArrayList();
teste1.add(“Lina”);
teste1.add(“Ferreira”);

teste.removeAll(teste1);

for (int ln = 0; ln < teste.size(); ln++)
System.out.println(teste.get(ln));[/code]

Só que a dúvida já foi respondida!

Tchauzin!

Rafael, qual foi a solução afinal ???

Temos 2 soluções no Post que você copiou,a minha iria se referir se estivesse retornando 2 consultas diferentes (sem usar ORM como já identificou o Yoshi) e a outra, é a mesma solução que o Yoashi deu, porém invertendo qual lista removia de qual, ou seja, mesmo sendo consultas diferentes as listas estavam referenciandos os mesmos objetos…

Abs []

Opa…

public boolean equals(Object o){  
        ItemNota in = (ItemNota) o;  
        if(this.nome.equals(in.nome) && this.valor.equals(in.valor))  
            return true;  
        return false;  
    } 

Fiz isso e resolveu o problema.

vlw

@rafaelpiton

Você não deve sobescrever somente o equals mas também o hashCode.

É muito importante entender os conceitos primários de igualdade em Java para podermos seguir adiante e utilizar com mais conforto o JAVA COLLECTIONS FRAMEWORK.
Este slide-show é muito bom e explica bem estes conceitos:

http://www.slideshare.net/elenilsonvieira/java-collections-tomaz-lavieri

Espero que o ajude assim como me ajudou.

Grande abraço!