Algorithmique et langage Java

Retirer des éléments

La méthode remove permet de retirer l'élément passé en paramètre. Le paramètre peut être l'index de l'élément, ou l'élément lui-même.

 
mouquetaires.remove(1);
retire le deuxième élément de la liste mousquetaires.

La méthode renvoie l'élément retiré.

Exemple :

 
  String s=mousquetaires.remove(1);
  System.out.println("J'ai enlevé "+s);
  
La variable s contient maintenant l'élément retiré de la liste. La deuxième ligne de code permet d'afficher l'élément retiré sur la console.

Si la valeur indiquée en paramètre est plus grande que la taille de la liste une erreur IndexOutOfBoundsException se produira.

Autre exemple : cette ligne permet d'enlever le premier élément de la liste et de le replacer en fin de liste.

 
mousquetaires.add(mousquetaires.remove(0));

La méthode remove peut aussi prendre comme paramètre l'élément à retirer.

 
mousquetaires.remove("Aramis"); 
retire l'élément "Aramis" de la liste s'il y figure. La méthode renvoie un booléen, vrai si l'élément a été trouvé et retiré de la liste, faux sinon.

Si l'élément figure plusieurs fois dans la liste c'est la première occurrence qui est retirée.

Pour retirer toutes les occurrences d'un élément dans une liste on peut donc utiliser une boucle while :

 while(mousquetaires.remove("Aramis"));
La boucle s'arrêtera quand la méthode remove ne trouvera plus d'occurrence de "Aramis".

La méthode removeRange permet de retirer tous les éléments d'index compris entre les deux entiers indiqués en paramètre.

 mousquetaires.removeRange(1,3); 
retire les éléments de la position 1 (incluse) à la position 3 (exclue).

Si les positions indiquées en paramètre dépassent la taille de la liste une erreur IndexOutOfBoundsException se produira.

Les méthodes remove et removeAll ne laissent pas de "trous" dans la liste : les éléments suivant ceux retirés sont décalés pour remplacer les éléments retirés.

Pour vider totalement une liste, on peut faire appel à la méthode clear.

mousquetaires.clear(); 

 
Licence Creative Commons
licence Creative Commons Attribution - Pas d’Utilisation Commerciale - Partage dans les Mêmes Conditions 3.0 non transposé
Auteur : Nathalie Bonnin
Professeur de Physique, Chimie, Informatique au lycée La Martinière Monplaisir (Lyon 8ème)
Contact :
nathalie.bonnin (chez) scientillula.net
Licence Creative Commons
La totalité du contenu du site Scientillula.net appartient à Nathalie Bonnin et est mise à disposition selon les termes de la licence Creative Commons Attribution - Pas d’Utilisation Commerciale - Partage dans les Mêmes Conditions 3.0 non transposé