Java 配列
Java 配列
このチュートリアルでは、Java で配列を操作する方法を学習します。例を使用して、配列要素の宣言、初期化、およびアクセスを学びます。
配列は、類似したタイプのデータの集まりです。
たとえば、100 人の名前を保存したい場合は、100 人の名前を保存できる文字列型の配列を作成できます。
String[] array = new String[100];
ここで、上記の配列は 100 を超える名前を格納できません。 Java 配列の値の数は常に固定です。
Java で配列を宣言する方法
Java で配列を宣言する方法は次のとおりです。
dataType[] arrayName;
- データ型 -
int
のようなプリミティブ データ型にすることができます 、char
、double
、byte
などまたは Java オブジェクト - arrayName - 識別子です
たとえば、
double[] data;
ここでは、データ double
型の値を保持できる配列です .
しかし、このホールドを配列できる要素はいくつありますか?
良い質問!配列が保持できる要素の数を定義するには、Java で配列にメモリを割り当てる必要があります。たとえば、
// declare an array
double[] data;
// allocate memory
data = new double[10];
ここで、配列は 10 を格納できます 要素。 サイズまたは長さとも言えます 配列の 10 です。
Java では、1 つのステートメントで配列のメモリを宣言して割り当てることができます。たとえば、
double[] data = new double[10];
Java で配列を初期化する方法
Java では、宣言中に配列を初期化できます。たとえば、
//declare and initialize and array
int[] age = {12, 4, 5, 2, 5};
ここでは、age という名前の配列を作成し、中かっこ内の値で初期化しています。
配列のサイズを提供していないことに注意してください。この場合、Java コンパイラは、配列内の要素の数 (つまり 5) を数えることによってサイズを自動的に指定します。
Java 配列では、各メモリ位置が番号に関連付けられています。この数値は配列インデックスと呼ばれます。インデックス番号を使用して、Java で配列を初期化することもできます。たとえば、
// declare an array
int[] age = new int[5];
// initialize array
age[0] = 12;
age[1] = 4;
age[2] = 5;
..
<図> 注意 :
- 配列のインデックスは常に 0 から始まります。つまり、配列の最初の要素のインデックスは 0 です。
- 配列のサイズが n の場合 の場合、配列の最後の要素はインデックス n-1 になります .
Java で配列の要素にアクセスする方法
インデックス番号を使用して配列の要素にアクセスできます。配列の要素にアクセスするための構文は次のとおりです。
// access array elements
array[index]
インデックス番号を使用して配列要素にアクセスする例を見てみましょう。
例:配列要素へのアクセス
class Main {
public static void main(String[] args) {
// create an array
int[] age = {12, 4, 5, 2, 5};
// access each array elements
System.out.println("Accessing Elements of Array:");
System.out.println("First Element: " + age[0]);
System.out.println("Second Element: " + age[1]);
System.out.println("Third Element: " + age[2]);
System.out.println("Fourth Element: " + age[3]);
System.out.println("Fifth Element: " + age[4]);
}
}
出力
Accessing Elements of Array: First Element: 12 Second Element: 4 Third Element: 5 Fourth Element: 2 Fifth Element: 5
上記の例では、インデックス番号を使用して配列の各要素にアクセスしていることに注意してください。
ループを使用して、配列のすべての要素に一度にアクセスできます。
配列要素のループ
Java では、配列の各要素をループすることもできます。たとえば、
例:for ループの使用
class Main {
public static void main(String[] args) {
// create an array
int[] age = {12, 4, 5};
// loop through the array
// using for loop
System.out.println("Using for Loop:");
for(int i = 0; i < age.length; i++) {
System.out.println(age[i]);
}
}
}
出力
Using for Loop: 12 4 5
上記の例では、Java で for ループを使用して、配列の各要素を反復処理しています。ループ内の式に注目してください。
age.length
ここでは、length
を使用しています。 配列のサイズを取得するための配列のプロパティ。
for-each ループを使用して、配列の要素を反復処理することもできます。たとえば、
例:for-each ループの使用
class Main {
public static void main(String[] args) {
// create an array
int[] age = {12, 4, 5};
// loop through the array
// using for loop
System.out.println("Using for-each Loop:");
for(int a : age) {
System.out.println(a);
}
}
}
出力
Using for-each Loop: 12 4 5
例:配列要素の合計と平均を計算する
class Main {
public static void main(String[] args) {
int[] numbers = {2, -9, 0, 5, 12, -25, 22, 9, 8, 12};
int sum = 0;
Double average;
// access all elements using for each loop
// add each element in sum
for (int number: numbers) {
sum += number;
}
// get the total number of elements
int arrayLength = numbers.length;
// calculate the average
// convert the average from int to double
average = ((double)sum / (double)arrayLength);
System.out.println("Sum = " + sum);
System.out.println("Average = " + average);
}
}
出力 :
Sum = 36 Average = 3.6
上記の例では、名前付きの numbers の配列を作成しました。 . for...each
を使用しました ループして配列の各要素にアクセスします。
ループ内で、各要素の合計を計算しています。行に注意してください、
int arrayLength = number.length;
ここでは、配列の長さ属性を使用して配列のサイズを計算しています。次に、以下を使用して平均を計算します:
average = ((double)sum / (double)arrayLength);
ご覧のとおり、 int
を変換しています 値を double
に .これは、Java では型キャストと呼ばれます。型キャストの詳細については、Java 型キャストを参照してください。
多次元配列
これまで述べてきた配列は 1 次元配列と呼ばれます。ただし、Java では多次元配列を宣言できます。
多次元配列は配列の配列です。つまり、多次元配列の各要素は配列そのものです。たとえば、
double[][] matrix = {{1.2, 4.3, 4.0},
{4.1, -1.1}
};
ここでは、matrix という名前の多次元配列を作成しました。 2次元配列です。詳細については、Java 多次元配列にアクセスしてください。
おすすめの読み物
- Java コピー配列
- 配列を出力する Java プログラム
- 2 つの配列を連結する Java プログラム
- Java ArrayList から Array へ、および Array から ArrayList へ
- Java 動的配列
Java