Overwritting des éléments d'une ArrayList
Bonsoir!
Je vais tenter d'exposer mon problème brièvement..et j'espère de tout coeur que vous saurez m'aiguiller.
Tout d'abord sachez que je lis les lignes d'un fichier pour ensuite remplir une arraylist.
Code:
1 2 3 4 5 6 7 8 9 10 11
|
while((ligne=br.readLine())!=null){ // on parcourt le fichier pour avoir le nombre de lignes
nombreLignes++;
}
br.reset(); // on revient au marqueur pour lire le fichier
ligne=br.readLine(); // la ligne à lire
templateMethode=new ArrayList<Template>(nombreLignes); |
Et ensuite c'est là que je bloque, j'ai une boucle for qui à chaque passage ré-écrit dans le précédent Template càd dans le précédent index de la liste, mais sans overwritter le nomTemplate..
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
| for(int indice=0; indice<nombreLignes; indice++){
StringTokenizer st = new StringTokenizer(ligne, "-");
templateMethode.add(indice, new Template(st.nextToken()));
for(int i=1; i<=14; i++)
{templateMethode.get(indice).Attaque[i].nombrePoints=Integer.parseInt(st.nextToken());}
for (int i=1; i<=14; i++)
{
templateMethode.get(indice).Defense[i].nombrePoints=Integer.parseInt(st.nextToken());
}
for (int i=1; i<=15; i++)
{
templateMethode.get(indice).Utilitaire[i].nombrePoints=Integer.parseInt(st.nextToken());
}
System.out.println(templateMethode.get(indice).nomTemplate + templateMethode.get(indice).Attaque[1].nombrePoints);
ligne=br.readLine();
} |
Suivi de :
Code:
1 2 3 4 5 6
|
System.out.println(templateMethode.get(0).nomTemplate + templateMethode.get(0).Attaque[1].nombrePoints);
System.out.println(templateMethode.get(1).nomTemplate + templateMethode.get(1).Attaque[1].nombrePoints);
System.out.println(templateMethode.get(2).nomTemplate + templateMethode.get(2).Attaque[1].nombrePoints); |
Pour obtenir :
Citation:
nom1 0
nom2 3
nom3 1
nom1 1
nom2 1
nom3 1
Merci à tous ceux qui prendront la peine de me lire et peut être d'éclairer ma lanterne.