Java で配列をクリアする
-
Java の
for
ループを使用して配列をクリアする -
Java で
fill()
メソッドを使用して配列をクリアする - Java で Null 参照を設定して配列をクリアする
- Java で新しい配列参照を割り当てることで配列をクリアする
このチュートリアルでは、Java で配列を空またはクリアする方法を紹介します。このトピックをさらに理解するのに役立ついくつかのサンプルコードを引用します。
配列をクリアするには、いくつかの方法を使用できます。たとえば、各配列インデックスに null 値を設定したり、配列参照のみに null を設定したりできます。Arrays
クラスの fill()
メソッドを使用して、デフォルト値を配列に設定することもできます。以下のいくつかの例を見てみましょう。
Java の for
ループを使用して配列をクリアする
これは、for
ループを使用して配列の各インデックスにデフォルト値を入力する簡単な例です。これは基本的なアプローチですが、プログラムが複雑になる可能性のある 1つの追加の 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 参照を設定して配列をクリアする
配列を完全に空にしたい場合(つまり、要素なし、デフォルト要素なし)、配列オブジェクトに null 参照を割り当てることができます。配列を 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