Editer: Ma liste est triée comme elle vient d'un DB J'ai une ArrayList qui a des objets de la classe People. Les personnes ont deux propriétés: ssn et terminationReason. Donc ma liste ressemble à cecicomment manipuler la liste dans java
ArrayList:
ssn TerminatinoReason
123456789 Reason1
123456789 Reason2
123456789 Reason3
568956899 Reason2
000000001 Reason3
000000001 Reason2
Je souhaite modifier cette liste afin qu'il n'y ait pas de doublons et les raisons de résiliation sont séparés par des virgules.
liste ci-dessus deviendrait donc
New ArrayList:
ssn TerminatinoReason
123456789 Reason1, Reason2, Reason3
568956899 Reason2
000000001 Reason3, Reason2
J'ai quelque chose où je suis Boucler dans la liste semble originale et correspondant à des années ssn, mais il ne fonctionne pas.
Quelqu'un peut-il aider?
code j'utilisais était:
String ssn = "";
Iterator it = results.iterator();
ArrayList newList = new ArrayList();
People ob;
while (it.hasNext())
{
ob = (People) it.next();
if (ssn.equalsIgnoreCase(""))
{
newList.add(ob);
ssn = ob.getSSN();
}
else if (ssn.equalsIgnoreCase(ob.getSSN()))
{
//should I get last object from new list and append this termination reason?
ob.getTerminationReason()
}
}
pouvez-vous afficher le code dans lequel vous parcourez la liste? – rogeriopvl
J'ai ajouté le code où je suis en boucle dans la liste –
Vous pouvez laisser la requête de base de données supprimer les dups afin que vous n'ayez pas à les traiter dans votre code java. Généralement, tout ce que vous faites dans la base de données sera probablement beaucoup plus efficace. – rich