ho qualche oggettodi ArrayList Contiene metodo
class A {
private Long id;
private String name;
public boolean equals(Long v) {
return this.id.equals(v);
}
}
e ArrayList di questi oggetti. Quello che voglio è essere in grado di controllare se quell'elenco contiene qualche oggetto per campo dell'oggetto. Per esempio:
ArrayList<A> list = new ArrayList<A>(); if (list.contains(0L)) {...}
ma overrided Equals metodo non mi aiuta. Cosa sto facendo di sbagliato? Grazie metodo
UPDATE E dovrei ignorare un codice hash() troppo?
hai sovrascritto equals() nella classe A? se sì, puoi postarlo qui? – c05mic
A giudicare dalle risposte seguenti, immagino che non ci sia una soluzione conveniente a questo. Penso che questo possa essere risolto con un'implementazione anonima della classe, come quella che si usa quando si chiama Collections.sort() con il proprio comparatore. – kodu
Dopo aver cercato un po 'di più, ho trovato alcune risposte utili qui: http://stackoverflow.com/questions/587404/finding-all-objects-that-have-a-given-property-inside-a-collection – kodu