Bonjour,
Je cherche un moyen de comparer les valeurs de 2 listes afin d'effectuer un traitement suivant les cas.
En entrée j'ai 2 fichiers, chaque ligne contient des valeurs pour un objet.
Exemple: pour l'objet Personne avec comme accesseurs id, prenom, metier, j'ai donc à chaque ligne quelque chose du genre
j ai donc a la fin un tableau de Personne.
Code : Sélectionner tout - Visualiser dans une fenêtre à part 12 bob medecin
Je fais la meme avec un 2eme fichier et j'obtiens donc un 2eme tableau de personne (pas forcement de meme taille).
Les id sont uniques dans le premier fichier et unique dans le deuxieme mais peuvent se croiser, genre le 12 peut etre present dans le fichier 1 et 2 mais pas de doublon dans le meme fichier.
voila donc le pb, comme ce sont de tres gros fichier et que ca doit aller vite, je ne veux pas apres obtention des 2 tableaux parcourir pour chaque valeur du premier tableau tous le deuxieme tableau afin d'effectuer la comparaison.
Mon idée c'etait au depart d'utiliser une HashMap pour chaque tableau avec comme key un Integer contenant l'id et l'objet personne en valeur.
Et d'utiliser pour ma comparaison tous simplement la methode contains (testant chaque key de le 1ere hashmap (en passant par un iterator sur le keyset) avec la 2eme hashmap) afin de ne pas me refaire tous le parcours.
Le probleme c'est que le contains test la reference sur l'objet et non la valeur du Integer, ce que je voudrais...
Any idea!???
Si pas clair ne pas hesiter.
Merci adn helppppppppppp mmmmmmeee
Partager