在 Java 中清除陣列

Mohammad Irfan 2023年10月12日
  1. 在 Java 中使用 for 迴圈清除陣列
  2. 使用 Java 中的 fill() 方法清除陣列
  3. 在 Java 中通過設定空引用來清除陣列
  4. 在 Java 中通過分配新的陣列引用來清除陣列
在 Java 中清除陣列

本教程介紹如何在 Java 中清空或清除陣列。我們將引用一些示例程式碼來幫助你進一步理解該主題。

要清除陣列,我們可以使用多種方法。例如,我們可以為每個陣列索引設定一個空值或僅將空值設定為陣列引用。你還可以使用 Arrays 類的 fill() 方法為陣列設定預設值。讓我們看看下面的一些例子。

在 Java 中使用 for 迴圈清除陣列

這是使用 for 迴圈為陣列的每個索引填充預設值的簡單示例。這是一種基本方法,但它需要一個額外的 for 迴圈,這可能會導致程式複雜性。請參閱此處的示例:

public class SimpleTesting {
  public static void main(String[] args) {
    int[] arr = {2, 22, 56, 78, 14};
    for (int i : arr) {
      System.out.println(i);
    }
    // Setting default value to empty array
    for (int i = 0; i < arr.length; i++) {
      arr[i] = 0;
    }
    for (int i : arr) {
      System.out.println(i);
    }
  }
}

輸出:

2
22
56
78
14
0
0
0
0
0

使用 Java 中的 fill() 方法清除陣列

此方法是另一種解決方案,我們使用 Arrays 類的 fill() 方法通過設定新值來清除陣列。使用 fill() 方法後,我們使用 for 迴圈訪問其元素並檢視是否所有部分都已清除。

import java.util.Arrays;
public class SimpleTesting {
  public static void main(String[] args) {
    int[] arr = {2, 22, 56, 78, 14};
    for (int i : arr) {
      System.out.println(i);
    }
    // Setting default value to empty array
    System.out.println("After Clearing Array:");
    Arrays.fill(arr, 0);
    for (int i : arr) {
      System.out.println(i);
    }
  }
}

輸出:

2
22
56
78
14
After Clearing Array:
0
0
0
0
0

在 Java 中通過設定空引用來清除陣列

如果你想讓一個陣列完全為空(即沒有元素,甚至沒有預設元素),你可以為陣列物件分配一個空引用。將陣列設為 null 後,不要嘗試訪問其元素,否則編譯器將返回 NullPointerException 命令。參考下面的示例程式碼:

public class SimpleTesting {
  public static void main(String[] args) {
    int[] arr = {2, 22, 56, 78, 14};
    for (int i : arr) {
      System.out.println(i);
    }
    // Setting null value to empty array
    arr = null;
    for (int i : arr) {
      System.out.println(i);
    }
  }
}

輸出:

2
22
56
78
14
Exception in thread "main" java.lang.NullPointerException
    at myjavaproject.SimpleTesting.main(SimpleTesting.java:11)

在 Java 中通過分配新的陣列引用來清除陣列

我們可以通過建立一個新的空陣列並將新陣列的引用分配給它來清除陣列。這個方法有點棘手;但是,嘗試並檢查它是否沒有丟擲任何異常很有用,因為新陣列具有其預設值。請參考以下示例:

public class SimpleTesting {
  public static void main(String[] args) {
    int[] arr = {2, 22, 56, 78, 14};
    for (int i : arr) {
      System.out.println(i);
    }
    // Setting new empty array
    System.out.println("After clearing Array:");
    arr = new int[arr.length];
    System.out.println(arr[0]);
  }
}

輸出:

2
22
56
78
14
0

相關文章 - Java Array