Bonjour,

Ma question n'a qu'un but pédagogique.

Est ce que quelqu'un pourrait m'aider à trouver une solution à mon problème en m'expliquant ce que je peux faire ?
J'essaye de lire un tableau à 2 dimensions se trouvant dans une liste à l'aide d'une boucle for, et lorsque je lis celui-ci après quelques insert, ma boucle for m'affiche toujours le dernier enregistrement.

J'ai du louper un notion essentiel mais un peu d'aide serait la bienvenue, je tourne en rond

Code : Sélectionner tout - Visualiser dans une fenêtre à part
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
34
35
36
 
 
public static void main(String[] args) {
 
		 // Déclaration de ma liste
		ArrayList <int[][]> liste = new ArrayList <int[][]>();
 
		// Déclaration de mon tableau
		int[][] tableau = new int[1][2] ;
 
		//Je souhaite insérer des valeurs dans chacune des colonnes de l'unique ligne du tableau pour ce faire :
 
		//J'affecte des valeurs a chacune des colonnes
		tableau[0][0] = 1 ;
		tableau[0][1] = 11 ;
 
		//J'ajoute le tableau avec les valeurs affectées à ma liste
		liste.add(tableau);
 
		System.out.println(liste.get(0)[0][0] + "\t" + liste.get(0)[0][1] ); // j'ai bien les valeurs dans la position 0 de ma liste
 
		//J'affecte d'autres valeurs a chacune des colonnes
		tableau[0][0] = 2 ;
		tableau[0][1] = 22 ;
 
		//J'ajoute le tableau avec les valeurs affectées à ma liste
		liste.add(tableau);
 
		System.out.println(liste.get(1)[0][0] + "\t" + liste.get(1)[0][1] ); // j'ai bien les valeurs dans la position 1 de ma liste
 
 
		//Et lorsque je souhaite afficher le tout à l'aide d'une boucle j'obtiens le résultat du dernier ajout 2 fois
		for (int i = 0 ; i < liste.size() ; i++ ) {
 
			System.out.println(liste.get(i)[0][0] + "\t" + liste.get(i)[0][1] );
		}
Je vous remercie d'avance pour votre aide.

Bien à vous.
Venone.