Comment gérez-vous l'aliasing dans Java? Une solution simple est de faire une copie de disons une ArrayList mais quand j'essaye d'écrire le code mes données continuent à être écrasées par les données nouvellement ajoutées. En détail:Java Collections & aliasing
ArrayList<ArrayList> temp = new ArrayList<ArrayList>() ;
ArrayList<ArrayList> personRecord = new ArrayList<ArrayList>() ;
ArrayList<String> personDetail = new ArrayList<String>() ;
...
while (input.hasNextLine())
{
String line = input.nextLine() ;
String [] tokens = line.split(" ", 0) ;
for (String s: tokens)
{
personDetail.add(s) ;
}
temp.add(personDetail) ;
personRecord.addAll(temp) ;
temp.clear() ;
personDetail.clear() ;
}
sortie:
[[Peter, M, 1972], [Peter, M, 1972]]
au lieu de:
[[Peter, M, 1972], [Anne, F, 1974]]
Quelle est l'entrée? –