Redimensionner un tableau tout en conservant les éléments actuels en Java

Mohammad Irfan 12 octobre 2023 Java Java Array
  1. Redimensionner un tableau en Java
  2. Redimensionner un tableau en utilisant la méthode arraycopy() en Java
  3. Redimensionner un tableau en utilisant la méthode copyOf() en Java
  4. Redimensionner un tableau en utilisant une boucle for en Java
Redimensionner un tableau tout en conservant les éléments actuels en Java

Ce didacticiel présente comment vous pouvez redimensionner un tableau tout en conservant tous ses éléments actuels en Java. Nous avons inclus quelques exemples de programmes auxquels vous pouvez vous référer lors de l’exécution d’un programme dans ce domaine.

ADVERTISEMENT

Un tableau est défini comme un conteneur utilisé pour stocker des types d’éléments similaires en Java. C’est un conteneur de taille fixe, ce qui signifie que si un tableau a une taille de 10, il ne peut stocker que 10 éléments - c’est l’une des limitations d’un tableau.

Dans cet article, nous allons apprendre à redimensionner un tableau en utilisant certaines méthodes intégrées telles que les fonctions arraycopy() et copyOf() et certains codes personnalisés.

Redimensionner un tableau en Java

L’alternative la plus élevée du tableau dynamique est la classe ArrayList du cadre de collection qui peut stocker un nombre quelconque d’éléments et grandit dynamiquement. La première chose que nous pouvons faire est de créer une ArrayList et d’y copier tous les éléments du tableau. Enfin, nous avons une nouvelle taille de tableau. Voir l’exemple ci-dessous :

Java
 javaCopyimport java.util.ArrayList;
import java.util.List;
public class SimpleTesting {
  public static void main(String[] args) {
    int arr[] = new int[] {12, 34, 21, 33, 22, 55};
    for (int a : arr) {
      System.out.print(a + " ");
    }
    List<Integer> list = new ArrayList<>();
    for (int a : arr) {
      list.add(a);
    }
    System.out.println("\n" + list);
    list.add(100);
    System.out.println(list);
  }
}

Production:

 textCopy12 34 21 33 22 55 
[12, 34, 21, 33, 22, 55]
[12, 34, 21, 33, 22, 55, 100]

Redimensionner un tableau en utilisant la méthode arraycopy() en Java

Java fournit une méthode arraycopy() qui appartient à la classe System et peut être utilisée pour créer une copie d’un tableau. Dans cet exemple, nous créons un nouveau tableau de plus grande taille, puis y copions tous les éléments du tableau d’origine en utilisant la méthode arraycopy(). Suivez l’exemple de programme ci-dessous :

Java
 javaCopypublic class SimpleTesting {
  public static void main(String[] args) {
    int arr[] = new int[] {12, 34, 21, 33, 22, 55};
    for (int a : arr) {
      System.out.print(a + " ");
    }
    int arr2[] = new int[10];
    System.arraycopy(arr, 0, arr2, 0, arr.length);
    System.out.println();
    for (int a : arr2) {
      System.out.print(a + " ");
    }
    System.out.println();
    arr2[6] = 100;
    for (int a : arr2) {
      System.out.print(a + " ");
    }
  }
}

Production:

 textCopy12 34 21 33 22 55
12 34 21 33 22 55 0 0 0 0
12 34 21 33 22 55 100 0 0 0

Redimensionner un tableau en utilisant la méthode copyOf() en Java

La classe Java Arrays fournit une méthode copyOf(), qui peut être utilisée pour créer un nouveau tableau de taille en copiant tous les éléments du tableau d’origine. Ce processus prend deux arguments : le premier est le tableau d’origine et le second est la taille du nouveau tableau. Voir l’exemple ci-dessous :

Java
 javaCopyimport java.util.Arrays;
public class SimpleTesting {
  public static void main(String[] args) {
    int arr[] = new int[] {12, 34, 21, 33, 22, 55};
    for (int a : arr) {
      System.out.print(a + " ");
    }
    int arr2[] = Arrays.copyOf(arr, 10);
    System.out.println();
    for (int a : arr2) {
      System.out.print(a + " ");
    }
    System.out.println();
    arr2[6] = 100;
    for (int a : arr2) {
      System.out.print(a + " ");
    }
  }
}

Production:

 textCopy12 34 21 33 22 55 
12 34 21 33 22 55 0 0 0 0 
12 34 21 33 22 55 100 0 0 0 

Redimensionner un tableau en utilisant une boucle for en Java

Cette méthode est simple et est une approche plus ancienne où nous utilisons une boucle for et affectons des éléments de tableau d’origine dans le tableau nouvellement créé à chaque itération. Nous créons simplement un nouveau tableau avec une taille plus grande et y copions tous les éléments en utilisant la boucle. Voir l’exemple ci-dessous :

Java
 javaCopypublic class SimpleTesting {
  public static void main(String[] args) {
    int arr[] = new int[] {12, 34, 21, 33, 22, 55};
    for (int a : arr) {
      System.out.print(a + " ");
    }
    int arr2[] = new int[10];
    for (int i = 0; i < arr.length; i++) {
      arr2[i] = arr[i];
    }
    System.out.println();
    for (int a : arr2) {
      System.out.print(a + " ");
    }
  }
}

Production:

 textCopy12 34 21 33 22 55 
12 34 21 33 22 55 0 0 0 0
Vous aimez nos tutoriels ? Abonnez-vous à DelftStack sur YouTube pour nous aider à créer davantage de tutoriels vidéo de haute qualité. Abonnez-vous

Article connexe - Java Array