Obtenir ArrayList du tableau int en Java
-
Création d’une
ArrayList
de type int -
Ajout d’un élément entier à un index dans
ArrayList
-
Accéder à l’élément
ArrayList
avec l’index - ArrayListe des tableaux int
-
Accès à l’élément de tableau int à partir de
ArrayList
- ArrayListe de ArrayLists
- Sommaire
Ce tutoriel présente comment obtenir ArrayList
d’ints en Java et répertorie quelques exemples de codes pour comprendre le sujet.
Une ArrayList
est un tableau dynamique ou redimensionnable. Il fait partie de Collection Framework en Java. ArrayList
est utilisé pour surmonter le problème de la taille fixe des tableaux normaux. Dans ce tutoriel, nous allons apprendre à créer une ArrayList
d’ints.
Création d’une ArrayList
de type int
ArrayList
ou toute autre collection ne peut pas stocker des types de données primitifs tels que int. Si nous écrivons le code ci-dessous, nous obtiendrons une erreur de compilation.
public class Demo {
public static void main(String[] args) {
ArrayList<int> arrList;
}
}
Production:
Exception in thread "main" java.lang.Error: Unresolved compilation problem:
Syntax error, insert "Dimensions" to complete ReferenceType
at snippet.Demo.main(Demo.java:7)
Au lieu de cela, nous utilisons des classes wrapper pour stocker les primitives dans ArrayList
. Chaque type de données primitif a une classe wrapper correspondante qui représente un objet pour le même type. Pour le type de données int, la classe wrapper est appelée Integer
. Ainsi, pour créer une ArrayList
d’entiers, nous devons utiliser la classe wrapper Integer
comme son type.
import java.util.ArrayList;
public class Demo {
public static void main(String[] args) {
ArrayList<Integer> arrList = new ArrayList<Integer>();
}
}
Nous pouvons maintenant ajouter des entiers à la ArrayList
en utilisant la méthode add()
de la classe.
import java.util.ArrayList;
public class Demo {
public static void main(String[] args) {
ArrayList<Integer> arrList = new ArrayList<Integer>();
arrList.add(5);
arrList.add(7);
arrList.add(12);
}
}
ArrayList
, tout comme les tableaux normaux, suit une indexation de base zéro. Nous pouvons spécifier l’index où nous voulons ajouter un objet dans la méthode add()
. L’élément présent à cet index et tous les éléments à sa droite se déplaceront d’une place vers la droite.
Ajout d’un élément entier à un index dans ArrayList
import java.util.ArrayList;
public class Demo {
public static void main(String[] args) {
ArrayList<Integer> arrList = new ArrayList<Integer>();
arrList.add(5);
arrList.add(7);
arrList.add(12);
arrList.add(1, 199); // Inserting 199 at index 1.
}
}
Accéder à l’élément ArrayList
avec l’index
Nous pouvons récupérer des éléments individuels ArrayList
en utilisant leurs indices. Passez la valeur d’index à la méthode get()
pour récupérer l’élément requis.
import java.util.ArrayList;
public class Demo {
public static void main(String[] args) {
ArrayList<Integer> arrList = new ArrayList<Integer>();
arrList.add(5);
arrList.add(7);
arrList.add(12);
arrList.add(1, 199); // Inserting 199 at index 1.
System.out.println("Element at index 1: " + arrList.get(1));
System.out.println("Element at index 2: " + arrList.get(2));
}
}
Production:
Element at index 1: 199
Element at index 2: 7
Nous pouvons également imprimer la totalité de la ArrayList
en utilisant une seule instruction print.
import java.util.ArrayList;
public class Demo {
public static void main(String[] args) {
ArrayList<Integer> arrList = new ArrayList<Integer>();
arrList.add(5);
arrList.add(7);
arrList.add(12);
System.out.println("Printing the ArrayList: " + arrList);
arrList.add(1, 199); // Inserting 199 at index 1.
System.out.println("Printing the ArrayList: " + arrList);
}
}
Production:
Printing the ArrayList: [5, 7, 12]
Printing the ArrayList: [5, 199, 7, 12]
ArrayListe des tableaux int
Nous pouvons créer une ArrayList
où chaque élément lui-même est un tableau. Nous utilisons le type de données et les crochets pour créer un nouveau tableau.
De même, nous avons défini le type de la ArrayList
en utilisant int[]
. On ne peut pas utiliser des primitives comme int comme type ArrayList
, mais on peut utiliser int[]
. C’est parce que les tableaux en Java sont des objets, pas des primitives. Et une ArrayList
peut être créée par n’importe quel type d’objet (les tableaux dans notre cas).
ArrayList<int[]> arrList = new ArrayList<int[]>();
Nous pouvons effectuer toutes les opérations de base dont nous avons parlé ci-dessus. Nous devons utiliser la méthode toString()
de Arrays
pour imprimer correctement le tableau sur la console.
import java.util.ArrayList;
import java.util.Arrays;
public class Demo {
public static void main(String[] args) {
ArrayList<int[]> arrList = new ArrayList<int[]>();
int[] arr1 = {2, 4, 6};
int[] arr2 = {3, 6, 9};
int[] arr3 = {5, 10, 15};
// Adding int arrays to the ArrayList
arrList.add(arr1);
arrList.add(arr2);
arrList.add(arr3);
// Fetching the array from the List
int[] arrAtIdx1 = arrList.get(1);
// Printing the fetched array using the toString() method of Arrays
System.out.println("The Second array in the List is: " + Arrays.toString(arrAtIdx1));
}
}
Production:
The Second array in the List is: [3, 6, 9]
Accès à l’élément de tableau int à partir de ArrayList
Nous pouvons également accéder aux éléments individuels des tableaux int présents dans la ArrayList
. Pour ce faire, nous utiliserons des indices de tableau. Par exemple, si nous souhaitons accéder au deuxième élément du troisième tableau, nous utiliserons le code suivant :
import java.util.ArrayList;
public class Demo {
public static void main(String[] args) {
ArrayList<int[]> arrList = new ArrayList<int[]>();
int[] arr1 = {2, 4, 6};
int[] arr2 = {3, 6, 9};
int[] arr3 = {5, 10, 15};
// Adding int arrays to the ArrayList
arrList.add(arr1);
arrList.add(arr2);
arrList.add(arr3);
// Fetching the second element of the third array
int[] thirdArr = arrList.get(2);
int secondElement = thirdArr[1];
System.out.println("Second Element of the Third Array is: " + secondElement);
}
}
Production:
Second Element of the Third Array is: 10
Cependant, nous avons besoin de code supplémentaire pour imprimer l’intégralité de la ArrayList
des tableaux.
import java.util.ArrayList;
import java.util.Arrays;
public class Demo {
public static void main(String[] args) {
ArrayList<int[]> arrList = new ArrayList<int[]>();
int[] arr1 = {2, 4, 6};
int[] arr2 = {3, 6, 9};
int[] arr3 = {5, 10, 15};
// Adding int arrays to the ArrayList
arrList.add(arr1);
arrList.add(arr2);
arrList.add(arr3);
for (int i = 0; i < arrList.size(); i++) {
int[] currArr = arrList.get(i);
System.out.println("Array at index " + i + " is: " + Arrays.toString(currArr));
}
}
}
Production:
Array at index 0 is: [2, 4, 6]
Array at index 1 is: [3, 6, 9]
Array at index 2 is: [5, 10, 15]
ArrayListe de ArrayLists
Comme indiqué ci-dessus, les tableaux sont de longueur fixe, mais les ArrayLists
sont dynamiques. Au lieu de créer une ArrayList
de tableaux int, nous pouvons créer une ArrayList
de Integer
ArrayLists
. De cette façon, nous n’aurons pas à nous soucier de manquer d’espace dans notre tableau.
ArrayList<ArrayList<Integer> > arrListOfarrLists = new ArrayList<ArrayList<Integer> >();
Nous pouvons utiliser la méthode add()
et la méthode get()
comme précédemment. Cependant, nous avons besoin d’une boucle pour imprimer chaque élément ArrayList
.
import java.util.ArrayList;
public class Demo {
public static void main(String[] args) {
ArrayList<ArrayList<Integer> > arrListOfarrLists = new ArrayList<ArrayList<Integer> >();
// Creating individual ArrayLists
ArrayList<Integer> arrList1 = new ArrayList<>();
arrList1.add(2);
arrList1.add(4);
arrList1.add(6);
ArrayList<Integer> arrList2 = new ArrayList<>();
arrList2.add(3);
arrList2.add(6);
arrList2.add(9);
ArrayList<Integer> arrList3 = new ArrayList<>();
arrList3.add(5);
arrList3.add(10);
arrList3.add(15);
// Adding ArrayLists to the ArrayList
arrListOfarrLists.add(arrList1);
arrListOfarrLists.add(arrList2);
arrListOfarrLists.add(arrList3);
// Fetching ArrayList
ArrayList<Integer> listAtIdx1 = arrListOfarrLists.get(1);
System.out.println("ArrayList present at index 1 is: " + listAtIdx1 + "\n");
// Printing the entire ArrayList
for (int i = 0; i < arrListOfarrLists.size(); i++)
System.out.println("ArrayList at index " + i + " is " + arrListOfarrLists.get(i));
}
}
Production:
ArrayList present at index 1 is: [3, 6, 9]
ArrayList at index 0 is [2, 4, 6]
ArrayList at index 1 is [3, 6, 9]
ArrayList at index 2 is [5, 10, 15]
Si vous souhaitez accéder à des éléments individuels de la ArrayList
, utilisez la méthode get()
deux fois. Par exemple, si vous voulez le deuxième élément du troisième ArrayList
, utilisez :
import java.util.ArrayList;
public class Demo {
public static void main(String[] args) {
ArrayList<ArrayList<Integer> > arrListOfarrLists = new ArrayList<ArrayList<Integer> >();
// Creating individual ArrayLists
ArrayList<Integer> arrList1 = new ArrayList<>();
arrList1.add(2);
arrList1.add(4);
arrList1.add(6);
ArrayList<Integer> arrList2 = new ArrayList<>();
arrList2.add(3);
arrList2.add(6);
arrList2.add(9);
ArrayList<Integer> arrList3 = new ArrayList<>();
arrList3.add(5);
arrList3.add(10);
arrList3.add(15);
// Adding ArrayLists to the ArrayList
arrListOfarrLists.add(arrList1);
arrListOfarrLists.add(arrList2);
arrListOfarrLists.add(arrList3);
// Fetching second element of the third ArrayList
ArrayList<Integer> thirdList = arrListOfarrLists.get(2);
int secondElement = thirdList.get(1);
System.out.print("second element of the third ArrayList is: " + secondElement);
}
}
Production:
second element of the third ArrayList is: 10
Sommaire
ArrayList
est probablement la collection la plus couramment utilisée en Java. C’est une structure de données simple utilisée pour stocker des éléments du même type. Nous ne pouvons pas créer une ArrayList
de types primitifs comme int. Nous devons utiliser les classes wrapper de ces primitives. La classe ArrayList
fournit des méthodes pratiques pour ajouter et récupérer des éléments de la liste. Nous pouvons également créer un ArrayList
de tableaux ou un ArrayList
de ArrayLists
. Ils sont principalement utilisés pour représenter des données dans un format matriciel 2D ou un format tabulaire. Il est préférable d’utiliser un ArrayList
de ArrayLists
, car cela ne limitera pas sa taille.