Bonjour à tout le monde;
J'ai encore besoin d'un petit peu d'aide.
Plusieurs fois au cours de mon apprentissage, j'ai été confronté à un problème:
Supprimer plusieurs objets en une boucle for sans lever d'exception
java.lang.ArrayIndexOutOfBoundsException
Je comprends pourquoi je la lève mais je ne trouve pas d'astuce pour contourner le problème.
Je vous met un morceau de code mais à titre purement indicatif:
En gros ici, si la valeur booléenne d'un bouton est true, on supprime l'objet.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 class EcouteurSuppression implements ActionListener {// notre ecouteur du bouton Suppression @Override public void actionPerformed(ActionEvent arg0) { for (int i=0; i<=Bouton.getNbreBouton(); i++){ if (tableauBouton[i].getASupprimer() == true){ System.out.println("A supprimer"); panelCentre.remove(tableauBouton[i]); panelCentre.validate(); } } } }
Mais si on supprime un objet et bien la dernière case de notre tableau est vide, et donc erreur.
Si je ne suis pas clair n'hésitez pas à me le dire.
Merci beaucoup de votre aide
Partager