Supprimer un objet dans un liste
Résolu
salma_dora
Messages postés
14
Statut
Membre
-
Kartzull Messages postés 657 Statut Membre -
Kartzull Messages postés 657 Statut Membre -
Bonjour,
j'ai une question sur la suppression d'objet dans la liste
j'essaye un code mais dans le déroulement il y a le problème suivant:
a chaque itération supprime un nombre parmi les autre nombre qui se trouve dans la liste mais lorsque arrive a la liste suivante [2, 3, 6] ne choisit pas 2 ou 3 ou 6 programme choisit le nombre 1 malgré ne trouve pas dans mon liste pourquoi??? c'est ça mon problème
voila mon code
le résultat

j'ai une question sur la suppression d'objet dans la liste
j'essaye un code mais dans le déroulement il y a le problème suivant:
a chaque itération supprime un nombre parmi les autre nombre qui se trouve dans la liste mais lorsque arrive a la liste suivante [2, 3, 6] ne choisit pas 2 ou 3 ou 6 programme choisit le nombre 1 malgré ne trouve pas dans mon liste pourquoi??? c'est ça mon problème
voila mon code
int[][] conn = {{0,1,1,0,0,0}, // 0 { 1,0,1,0,0,0}, // 1 { 1,1,0,0,0,0}, // 2 { 0,0,0,0,1,0}, // 3 { 0,0,0,1,0,0}, // 4 { 0,0,0,0,0,0}, // 5 }; List<Integer> VList= new ArrayList<Integer>(); Random rnd=new Random(); Graph1 G = new Graph1(conn); for (int iv=0; iv <= NNodes;iv++){ VList.add(iv);} while(!VList.isEmpty()){ System.out.println(VList); int n=rnd.nextInt(VList.size()); System.out.println(n); VList.remove(VList.indexOf(n)); System.out.println(VList); } } }
le résultat

A voir également:
- Supprimer un objet dans un liste
- Supprimer rond bleu whatsapp - Guide
- Liste déroulante excel - Guide
- Supprimer une page dans word - Guide
- Impossible de supprimer un fichier - Guide
- Comment supprimer un compte gmail - Guide
1 réponse
Tu utilises :
VList.remove(VList.indexOf(n));
Tu veux donc supprimer le chiffre n dans le tableau et non le chiffre à l'emplacement n dans le tableau ? C'est ce qui est fait ici.
L'erreur est donc, je pense, qu'il ne trouve pas le chiffre n=1 dans le tableau de [2,3,6] et il génère donc une erreur
VList.remove(VList.indexOf(n));
Tu veux donc supprimer le chiffre n dans le tableau et non le chiffre à l'emplacement n dans le tableau ? C'est ce qui est fait ici.
L'erreur est donc, je pense, qu'il ne trouve pas le chiffre n=1 dans le tableau de [2,3,6] et il génère donc une erreur
salma_dora
Messages postés
14
Statut
Membre
merci monsieur mais comment résolu ça ,c'est ça mon problème je veux supprime un nombre parmi les nombre 2,3,6 pas l'indice je pense que le problème dans le Random ne choisit pas un nombre parmi les nombre 2,3,6 comment resolu ca ???????
Kartzull
Messages postés
657
Statut
Membre
138
Tu peux vérifier qu'il existe dans le tableau (méthode longue car il recommence jusqu'à en avoir un existant) avec <array>.contains(n)
salma_dora
Messages postés
14
Statut
Membre
>
Kartzull
Messages postés
657
Statut
Membre
J’utilise le langage java , le problème dans la méthode random je ne trouve pas comment j'utilise random pour choisi un nombre parmi les nombres qui se trouve dans la liste ,mon code lorsque arrive a la liste [2,3,6] ne choisi pas 2 ,ou 3 ou 6 elle choisi un autre nombre 1 qui ne trouve pas dans [2,3,6] . merci pour votre réponses
Kartzull
Messages postés
657
Statut
Membre
138
Oui, il choisi pas soit 2,3 ou 6, il choisi 1,2 ou 3 (ou : 0,1 ou 2) car il y à 3 nombres. Il choisi le nombre d’éléments qu'il y à et non leur valeur