Comment initialiser une liste en Java
Java.util.List est une interface fille de l’interface Collection. Il s’agit d’une collection d’objets ordonnées dans laquelle des valeurs en double peuvent être stockées. Comme List préserve l’ordre d’insertion, il permet l’accès positionnel et l’insertion d’éléments. L’interface List est implémentée par les classes ArrayList, LinkedList, Vector et Stack.
List est une interface et les instances de List peuvent être créées des manières suivantes:
List arrayList = new ArrayList(); List linkedList = new LinkedList(); List vector = new Vector(); List stack = new Stack();
Voici les différents façons pour initialiser une liste:
Utilisation de la méthode List.add()
List étant une interface, on ne peut pas l’instancier directement. Cependant, on peut créer des objets de ces classes qui ont implémenté cette interface et les instancier.
Les classes qui implément l’interface List sont ArrayList, LinkedList, Vector, Stack etc.
Exemple:
import java.util.*; public class Main { public static void main(String args[]) { //ArrayList List<String> list1 = new ArrayList<String>(); list1.add("A"); list1.add("B"); list1.add("C"); System.out.println("ArrayList : " + list1); //LinkedList List<String> list2 = new LinkedList<String>(); list2.add("A"); list2.add("B"); list2.add("C"); System.out.println("LinkedList : " + list2); //Stack List<String> list3 = new Stack<String>(); list3.add("A"); list3.add("B"); list3.add("C"); System.out.println("Stack : " + list3); } }
Sortie:
ArrayList : [A, B, C] LinkedList : [A, B, C] Stack : [A, B, C]
Utilisation de Arrays.asList()
Arrays.asList() crée une liste immuable à partir d’un tableau. Par conséquent, il peut être utilisé pour instancier une liste avec un tableau.
Syntaxe:
List<Integer> liste = Arrays.asList(1, 2, 3, 4);
Exemple:
import java.util.*; public class Main { public static void main(String args[]) { // Instanciation de la liste à l'aide de Arrays.asList() List<Integer> list = Arrays.asList(1, 2, 3, 4); // Afficher la liste System.out.println(list.toString()); } }
Sortie:
[1, 2, 3, 4]
Création d’une liste modifiable
Syntaxe:
List<Integer> liste = new ArrayList<>(Arrays.asList(1, 2, 3, 4));
Exemple:
import java.util.*; public class Main { public static void main(String args[]) { // Instanciation de la liste List<Integer> liste = new ArrayList<>(Arrays.asList(1, 2, 3, 4)); // Afficher la liste avant la modification System.out.println(liste.toString()); liste.add(5); // Afficher la liste aprés la modification System.out.println(liste.toString()); } }
Sortie:
[1, 2, 3, 4] [1, 2, 3, 4, 5]