Liste de tableaux
Contrairement aux tableaux ordinaires, le ArrayList du package java.util est un tableau à expansion automatique. Lorsque vous créez un objet de type ArrayList , vous n'avez pas besoin de préciser sa dimension. Par exemple,
ArrayList list = new ArrayList();
Avantages ArrayList par rapport à un tableau normal :
- accès rapide aux éléments par index en temps constant
O(1) ;
- accéder aux éléments par valeur en temps linéaire
O(n) ;
- vous permet de stocker n'importe quelle valeur, y compris
null .
Faiblesses ArrayList :
Insérer/supprimer un élément provoque l'écrasement de tous les éléments placés "à droite" dans la liste une position vers la gauche, c'est-à-dire que cela fonctionne en temps linéaire O(n) ;
N'oubliez pas que les listes ne peuvent contenir que des objets, donc si vous voulez stocker des nombres, utilisez Integer au lieu de int . Integer est le nom d'une classe, et un objet de cette classe peut contenir une valeur entière. Vous pouvez en savoir plus sur les classes et les objets ici : introduction à la programmation orientée objet.
|
Il existe deux options pour ajouter un élément à une ArrayList :
add(value); - ajouter une valeur à la fin de la ArrayList
add(index, value); - ajouter une valeur au bon endroit par index.
Par exemple :
arr.ajouter(10) ; durée>
arr.ajouter(5,10) ;
|
Pour obtenir la valeur d'un élément d'une ArrayList, utilisez la méthode get(index)
Par exemple :
Pour connaître le nombre d'éléments d'un tableau, vous pouvez utiliser la méthode size()
Par exemple :
int compter = arr. taille();
|
Pour modifier la valeur par index dans la liste, utilisez name.set(index,value);
|
Il existe deux options pour ajouter un élément à une ArrayList :
add(value); - ajouter une valeur à la fin de la ArrayList
add(index, value); - ajouter une valeur au bon endroit par index.
Par exemple :
arr.ajouter(10) ; durée>
arr.ajouter(5,10) ;
|
Vous pouvez supprimer des éléments d'une ArrayList à l'aide de la méthode remove de deux manières :
- par suppression d'index(index)
- par valeur supprimer(valeur)
Par exemple :
arr.supprimer(0); span> //supprime le premier élément
arr.supprimer(< strong>new Integer(10)); //supprime l'élément avec la valeur 10
|
Inverser la liste de tableaux
L'interface Collections fournit également des méthodes pour les opérations en masse qui fonctionnent sur l'ensemble de la collection :
containsAll - renvoie la valeur booléenne true si cette collection contient tous les éléments de la collection appelée, sinon elle renvoie false .
addAll - ajoute tous les éléments spécifiés à la collection spécifiée. Les éléments à ajouter peuvent être spécifiés individuellement ou sous forme de tableau.
removeAll - est utilisé pour supprimer tous les éléments de la liste qui sont contenus dans la collection spécifiée.
clear - supprimer tous les éléments
reverse - tableau inverse
etc.
Exemple
Utilisation de removeAll .
ArrayList first = new ArrayList<Integer>();
premier.add(1);
premier.add(2);
first.add(3);
ArrayList second = new ArrayList<Integer>();
second.add(1);
second.add(2);
// supprime tous les éléments de la deuxième liste,
// s'ils existent dans la première liste
second.removeAll(premier);
|