Obtenir ArrayList du tableau int en Java

Mohammad Irfan 12 octobre 2023
  1. Création d’une ArrayList de type int
  2. Ajout d’un élément entier à un index dans ArrayList
  3. Accéder à l’élément ArrayList avec l’index
  4. ArrayListe des tableaux int
  5. Accès à l’élément de tableau int à partir de ArrayList
  6. ArrayListe de ArrayLists
  7. Sommaire
Obtenir ArrayList du tableau int en Java

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.

Article connexe - Java ArrayList