Besoin d'explication sur l'utilisation d'un Vector contenant des tableaux de Strings.
Bonjour,
Je souhaite utiliser un Vector de tableau de Strings mais lorsque je consulte le contenu du Vector c'est toujours le dernier enregistrement que je vois.
Exemple:
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 25 26 27 28 29 30 31 32 33
|
//Tableau de 3 Strings qui contient la description d'un article.
String TabDescriptArticle[] = null;
TabDescriptArticle = new String[3];
//Vector qui va contenir les tableaux de Strings.
Vector<String[]> ListeArticles = new Vector<String[]>();
//Création article 1
TabDescriptArticle[0] = "Test1";
TabDescriptArticle[1] = "Test2";
TabDescriptArticle[2] = "Test3";
//Ajout au Vector
ListeArticles.add(TabDescriptArticle);
//Création article 2
TabDescriptArticle[0] = "Test4";
TabDescriptArticle[1] = "Test5";
TabDescriptArticle[2] = "Test6";
//Ajout au Vector
ListeArticles.add(TabDescriptArticle);
//Pour vérifier l'enregistrement...
String tab[] = new String[3];
tab = ListeArticles2.get(0);
System.out.println(tab[0]+tab[1]+tab[2]);
tab = ListeArticles2.get(1);
System.out.println(tab[0]+tab[1]+tab[2]); |
Résultat:
Citation:
Test4Test5Test6
Test4Test5Test6
Je m'attendais à avoir:
Citation:
Test1Test2Test3
Test4Test5Test6
Pouvez-vous m'expliquer pourquoi ce résultat?
J'ai essayé ainsi (avec 2 tableaux différents pour l'enregistrement dans le Vector) et j'obtiens bien le résultat voulu:
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 25 26 27 28
|
String TabDescriptArticle[] = null;
String TabDescriptArticle2[] = null;
TabDescriptArticle = new String[3];
TabDescriptArticle2 = new String[3];
Vector<String[]> ListeArticles = new Vector<String[]>();
TabDescriptArticle[0] = "Test1";
TabDescriptArticle[1] = "Test2";
TabDescriptArticle[2] = "Test3";
ListeArticles.add(TabDescriptArticle);
TabDescriptArticle2[0] = "Test4";
TabDescriptArticle2[1] = "Test5";
TabDescriptArticle2[2] = "Test6";
ListeArticles.add(TabDescriptArticle2);
String tab[] = new String[3];
tab = ListeArticles2.get(0);
System.out.println(tab[0]+tab[1]+tab[2]);
tab = ListeArticles2.get(1);
System.out.println(tab[0]+tab[1]+tab[2]); |
Citation:
Test1Test2Test3
Test4Test5Test6
Merci d'avance pour vos explications.