Problème de remplissage de liste
Résolu
Rune188
Messages postés
65
Date d'inscription
Statut
Membre
Dernière intervention
-
Utilisateur anonyme -
Utilisateur anonyme -
Bonsoir et bonne année,
Je rencontre un problème avec le remplissage d'une liste.
j'essaye de remplir un liste mais celle-ci ne se rempli que avec les mêmes valeur alors que je change pourtant a chaque tour de boucle for les valeurs de cette objet
voici mon code:
et voici l'affichage:

Je rencontre un problème avec le remplissage d'une liste.
j'essaye de remplir un liste mais celle-ci ne se rempli que avec les mêmes valeur alors que je change pourtant a chaque tour de boucle for les valeurs de cette objet
voici mon code:
BookCount bc = new BookCount(); List<BookCount> bcList= new ArrayList<BookCount>(); for(int i =0;i<bkLst.size();i++){ bc.setBk(bkLst.get(i)); bc.setNbr(countFile.get(i)); System.out.println("book a ajouter: "+bc.getBk()); bcList.add(bc); } System.out.println("*********************"); for(int i =0;i<bcList.size();i++){ System.out.println(bcList.get(i).getBk()); }
et voici l'affichage:
A voir également:
- Problème de remplissage de liste
- Liste déroulante excel - Guide
- Liste déroulante en cascade - Guide
- Liste de diffusion whatsapp - Guide
- Liste code ascii - Guide
- Liste de numéro de téléphone suspect - Guide
3 réponses
Bonsoir
analysons ce que fait ton code.
Il crée un objet bc dont la portée est valable pour tout le code
Ensuite il modifie l'objet bc et l'ajoute à une liste.
Ensuite il modifie l'objet bc et l'ajoute à une liste.
Etc.
Donc à la fin la liste c'est
[bc, bc, bc, bc, bc, bc, bc, ...., bc]
Il t'affiche donc
bc
bc
bc
bc
bc
....
bc
analysons ce que fait ton code.
Il crée un objet bc dont la portée est valable pour tout le code
Ensuite il modifie l'objet bc et l'ajoute à une liste.
Ensuite il modifie l'objet bc et l'ajoute à une liste.
Etc.
Donc à la fin la liste c'est
[bc, bc, bc, bc, bc, bc, bc, ...., bc]
Il t'affiche donc
bc
bc
bc
bc
bc
....
bc
ok donc si je crée l'objet à chaque tour de boucle cela devrait fonctionné
Merci, je passe en résolu
List<BookCount> bcList= new ArrayList<BookCount>(); for(int i =0;i<bkLst.size();i++){ BookCount bc = new BookCount(); bc.setBk(bkLst.get(i)); bc.setNbr(countFile.get(i)); System.out.println("book a ajouter: "+bc.getBk()); bcList.add(bc); }
Merci, je passe en résolu