Ändern Sie die Größe eines Arrays, während Sie die aktuellen Elemente in Java beibehalten

Mohammad Irfan 12 Oktober 2023
  1. Ändern Sie die Größe eines Arrays in Java
  2. Ändern Sie die Größe eines Arrays mit der Methode arraycopy() in Java
  3. Ändern Sie die Größe eines Arrays mit der Methode copyOf() in Java
  4. Ändern Sie die Größe eines Arrays mithilfe einer for-Schleife in Java
Ändern Sie die Größe eines Arrays, während Sie die aktuellen Elemente in Java beibehalten

In diesem Tutorial wird erläutert, wie Sie die Größe eines Arrays ändern können, während alle seine aktuellen Elemente in Java beibehalten werden. Wir haben einige Beispielprogramme beigefügt, auf die Sie beim Ausführen eines Programms in diesem Feld verweisen können.

Ein Array ist als Container definiert, der zum Speichern ähnlicher Elementtypen in Java verwendet wird. Es ist ein Container mit fester Größe, was bedeutet, dass ein Array mit einer Größe von 10 nur 10 Elemente speichern kann – dies ist eine der Einschränkungen eines Arrays.

In diesem Artikel erfahren Sie, wie Sie die Größe eines Arrays ändern, indem Sie einige integrierte Methoden wie die Funktionen arraycopy() und copyOf() und einige benutzerdefinierte Codes verwenden.

Ändern Sie die Größe eines Arrays in Java

Die oberste Alternative des dynamischen Arrays ist die Klasse ArrayList des Collection-Frameworks, die beliebig viele Elemente speichern kann und dynamisch wächst. Als erstes können wir eine ArrayList erstellen und alle Array-Elemente hineinkopieren. Endlich haben wir eine neue Array-Größe. Siehe das Beispiel unten:

import 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);
  }
}

Ausgabe:

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

Ändern Sie die Größe eines Arrays mit der Methode arraycopy() in Java

Java stellt eine Methode arraycopy() zur Verfügung, die zur Klasse System gehört und mit der eine Kopie eines Arrays erstellt werden kann. In diesem Beispiel erstellen wir ein neues Array mit einer größeren Größe und kopieren dann alle ursprünglichen Array-Elemente mit der Methode arraycopy() hinein. Folgen Sie dem folgenden Beispielprogramm:

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[] = 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 + " ");
    }
  }
}

Ausgabe:

12 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

Ändern Sie die Größe eines Arrays mit der Methode copyOf() in Java

Die Java-Klasse Arrays stellt eine Methode copyOf() zur Verfügung, mit der ein Array mit neuer Größe erstellt werden kann, indem alle ursprünglichen Array-Elemente kopiert werden. Dieser Prozess benötigt zwei Argumente: Das erste ist das ursprüngliche Array und das zweite ist die Größe des neuen Arrays. Siehe das Beispiel unten:

import 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 + " ");
    }
  }
}

Ausgabe:

12 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 

Ändern Sie die Größe eines Arrays mithilfe einer for-Schleife in Java

Diese Methode ist unkompliziert und ist ein älterer Ansatz, bei dem wir eine for-Schleife verwenden und in jeder Iteration ursprüngliche Array-Elemente in das neu erstellte Array zuweisen. Wir erstellen einfach ein neues Array mit einer größeren Größe und kopieren alle Elemente mithilfe der Schleife hinein. Siehe das Beispiel unten:

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[] = 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 + " ");
    }
  }
}

Ausgabe:

12 34 21 33 22 55 
12 34 21 33 22 55 0 0 0 0

Verwandter Artikel - Java Array