Dato due elenchi, ogni elenco con lo stesso tipo di oggetto, vorrei trovare gli oggetti tra i due elenchi che corrispondono, in base ad alcuni valori di proprietà.java - Come trovare gli oggetti corrispondenti tra due elenchi?
ad es. un oggetto da List1, L1Obj, corrisponde a un oggetto da List2, L2Obj, se L1Obj.a == L2Obj.a AND L1Obj.b == L2Obj.c AND L1Obj.c == L2Obj.c
Queste proprietà non sono le uniche proprietà della classe, ma sono tutto ciò che è necessario per identificare univocamente un oggetto all'interno di una lista.
La mia domanda è: qual è il modo migliore per raggiungere questo obiettivo?
Un modo sarebbe di costruire in HashMaps in base agli elenchi, con il valore di stringa concatenato di un + b + c utilizzato come chiave per indicizzare un oggetto. In questo modo ho potuto scorrere il primo elenco e tentare di cercare un oggetto nel secondo elenco con la stessa chiave.
Come suona? C'è un modo migliore per raggiungere questo?
Tutto l'aiuto è molto apprezzato!
UPDATE:
Okay, in realtà ho bisogno di un po 'di più. Dopo aver trovato una corrispondenza, desidero sovrascrivere le proprietà L1Obj.x, L1Obj.y, L1Obj.z con quelle di L2Obj. HashSet è ottimo per trovare le corrispondenze, ma se ho ragione non mi consente di accedere a queste partite.
Cosa posso fare a riguardo?
è possibile modificare il codice delle classi memorizzate negli elenchi? – Alb
@Alb sì Posso modificare il codice – QuakerOat