Bonjour,
J'ai plusieurs ArrayList (disons 10 ArrayList) et je cherche à comparer leur contenue afin de retourner une ArrayList avec toutes les personnes présente et sans doublon.
Comment comparer des arraylist?
Cordialement
Bonjour,
J'ai plusieurs ArrayList (disons 10 ArrayList) et je cherche à comparer leur contenue afin de retourner une ArrayList avec toutes les personnes présente et sans doublon.
Comment comparer des arraylist?
Cordialement
Je ne peux pas utiliser CollectionUtils car mes arraylist ne sont pas de type standart
Si tu veux éviter les doublons, tu as une solutions simple si l'ordre des éléments n'a pas d'importance :
- Définis les méthodes hashcode et equals sur tes objets contenus dans tes ArrayList
- Ajoute tous tes éléments dans un HashSet (tu n'auras pas de doublons)
Sinon, ben tu fais ça :
- Définis les méthodes hashcode et equals sur tes objets contenus dans tes ArrayList
- Tu créé une List du résultat attendu
- Pour chaque liste que tu as
-- Si ta liste ne contient pas la valeur de ton ArrayList, tu l'ajoutes
Que veux tu dire par "mes collections ne sont pas de type standard" ?
Ou alors tu passes par une map et tu constitues ta clé en fonction de ce dont tu as besoin (fonctionnellement), quitte à passer par un objet si tu as besoin de plusieurs attributs.
Ensuite, tu n'as plus qu'à prendre la partie map.values() pour avoir une liste sans doublon...
Ceci dit, la solution de eulbobo va très bien aussi![]()
Partager