配列は Java プログラミングの重要な部分であり、複数の値を 1 つの変数に格納する方法を提供します。これらは、要素をグループ化する必要がある場合、要素を反復処理する場合、または一括操作を実行する必要がある場合に便利です。
この投稿では、基本的な配列の概念、よくある落とし穴、および Java で配列を操作するときに覚えておくべきいくつかの重要な事柄について説明します。初心者でも、基本をもう一度見直したい人でも、この投稿は役に立ちます。
宣言されているが初期化されていないを扱う場合、インスタンス変数とローカル変数の間には重要な違いがあります。彼らの行動に問題があります
次のコードを確認してください:
public class ArrayBasics { int numbers[]; // <-- Instance Variable private void display() { System.out.println(numbers); } public static void main(String[] args) { ArrayBasics obj = new ArrayBasics(); obj.display(); // Result : null int numb[]; // <-- Local variable System.out.println(numb); // Compile-time Error: numb may not have been initialized. } }
重要なポイント:
numbers[] のようなインスタンス変数は、自動的に null に初期化されます。
ローカル変数は明示的に初期化する必要があります。そうしないと、コンパイル時エラーが発生します。
Java で配列を初期化するには、主に 2 つの方法があります。
1.初期化時に値が不明な場合:
最初に値が不明な場合は、指定したサイズで配列を宣言できます。これにより、デフォルト値 (たとえば、int 配列の場合は 0) を持つ配列が作成されます。
int numbers[] = new int[10]; // Declares an array of size 10.
その後、通常はループを使用して、配列要素に値を割り当てることができます。
for (int i = 0; i < numbers.length; i++) { numbers[i] = i; // Assign values to the array. }
割り当てられたら、for-each ループを使用して配列を反復処理できます。
for (int num : numbers) { System.out.println(num); // Prints each element in the array. }
注: for-each ループは、値を読み取るだけでよく、配列のインデックスを操作する必要がない場合に最適です。
2.初期化時に値がわかっている場合:
配列に格納したい値がすでにわかっている場合は、それらの値を使用して配列を直接初期化できます。
// Array initialized with known values. int anotherNumberArray[] = {1, 2, 3, 4, 5};
注: 配列定数を使用した宣言後に空の配列に値を代入することはできません。たとえば、次の場合はコンパイル エラーが発生します:
int anotherNumberArray[] = {}; // An empty array of length 0. anotherNumberArray = {1, 2, 3, 4, 5}; // Compilation Error - Array constants can only be used in initializers
初期化されていないローカル配列: 前述したように、ローカル変数にはデフォルト値がありません。
配列のサイズ制限: 配列は、宣言されるとサイズが固定されるため、動的配列が必要な場合は、ArrayList または他のコレクション型を検討する必要があります。
範囲外エラー: 配列を反復処理するときは、常に ArrayIndexOutOfBoundsException に注意してください。
配列は Java のシンプルかつ強力なツールであり、これをマスターすると、データのコレクションの処理がはるかに簡単になります。配列のサイズは固定されていますが、サイズが事前にわかっているタスクでは非常に効率的であることに注意してください。
この投稿が配列の基本をより深く理解するのに役立つことを願っています。コメントでご意見やご質問をお聞かせください。
以上がJava の配列の基本を理解する: シンプルなガイドの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。