の配列 Java
⚡ スマートサマリー
の配列 Java これらは固定サイズのインデックスベースのコンテナであり、1つのデータ型の要素を連続したメモリに格納し、定数時間でのアクセス、組み込みの境界チェック、および長さフィールドを提供するため、ほとんどの標準ライブラリコレクションの基盤となっています。

とは Java 配列?
A Java 配列 は、連続したメモリに 1 つのデータ型の要素を格納する固定サイズの構造体です。各要素はゼロベースのインデックスでアクセスされるため、最初の要素は にあります。 0 そして最後は length - 1配列は以下を継承します Object 実装します Serializable (NAIST) と Cloneable、プリミティブ型またはオブジェクト参照を保持できます。
配列は、番号付き変数の長い羅列を置き換えるものです。6つの独立した整数を考えてみましょう。
x0 = 0; x1 = 1; x2 = 2; x3 = 3; x4 = 4; x5 = 5;
同じ6つの値が、長さ6の単一の配列に格納されています。
x[0] = 0; x[1] = 1; x[2] = 2; x[3] = 3; x[4] = 4; x[5] = 5;
A ループ 変数によって括弧内のインデックスを制御できるため、各要素を6回コピーする代わりに3行で処理できます。
for (int count = 0; count < 5; count++) { System.out.println(x[count]); }
配列の種類 Java
Java 配列には2つの形状があります。
- 一次元配列: 要素のフラットなリスト。
- 多次元配列: 配列の配列。グリッドや行列に使用される。
配列変数:宣言、構築、初期化
配列を使うことは 3段階のプロセス: 宣言、構築 new次に初期化します。
1) 配列を宣言する
構文:
<elementType>[] <arrayName>;
or (旧式のCスタイル形式、現在も有効):
<elementType> <arrayName>[];
例:
int[] intArray; // canonical form: brackets on the type int intArray2[]; // legacy C-style form, discouraged in new code
2) 配列を構築する
構文:
arrayName = new dataType[size];
例:
intArray = new int[10]; // defines that intArray will store 10 integer values
宣言と建設を組み合わせたもの:
int[] intArray = new int[10];
3) 配列を初期化する
intArray[0] = 1; // assigns 1 to the first element (index 0) intArray[1] = 2; // assigns 2 to the second element (index 1)
宣言と初期化を1ステップで実行 配列リテラルを使用する:
int[] intArray = {1, 2, 3, 4}; // initialises an integer array of length 4 where the first element is 1, // the second element is 2, and so on.
最初の配列プログラム Java
ステップ1) 以下のコードをエディタにコピーしてください。
class ArrayDemo { public static void main(String args[]) { int array[] = new int[7]; for (int count = 0; count < 7; count++) { array[count] = count + 1; } for (int count = 0; count < 7; count++) { System.out.println("array[" + count + "] = " + array[count]); } // System.out.println("Length of Array = " + array.length); // array[8] = 10; } }
ステップ2) コードを保存、コンパイル、実行してください。出力結果を確認してください。
期待される出力:
array[0] = 1 array[1] = 2 array[2] = 3 array[3] = 4 array[4] = 5 array[5] = 6 array[6] = 7
ステップ3) If x 配列参照です。 x.length スロット数を返します。最初のコメントアウトされた行のコメントを解除して、再度実行してください。
Length of Array = 7
ステップ4) Cとは異なり、 Java 配列へのアクセスごとに境界チェックを行います。2行目のコメントアウトを解除して再実行してください。
Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 8 at ArrayDemo.main(ArrayDemo.java:11) Command exited with non-zero status 1
ステップ5) JVM がスローします ArrayIndexOutOfBoundsExceptionC言語では、同じアクセスでも失敗する代わりに、隣接するメモリからガベージが返される。
Java 配列: 参照渡し
配列は参照渡しでメソッドに渡されます。メソッドは参照のコピーを受け取るため、メソッド内で行われた要素の変更は呼び出し元から確認できます。
例:配列は参照渡しされます。
ステップ1) 以下のコードをエディタにコピーしてください。
class ArrayDemo { public static void passByReference(String a[]) { a[0] = "Changed"; } public static void main(String args[]) { String[] b = {"Apple", "Mango", "Orange"}; System.out.println("Before Function Call " + b[0]); ArrayDemo.passByReference(b); System.out.println("After Function Call " + b[0]); } }
ステップ2) コードを保存、コンパイル、実行してください。出力結果を確認してください。
期待される出力:
Before Function Call Apple After Function Call Changed
多次元配列 Java
多次元配列は配列の配列です。各次元ごとに角括弧を追加します。4行5列の2次元整数グリッドを作成するには、次のようにします。
int[][] twoD = new int[4][5];
最初にサイズを指定する必要があるのは最初の(左端の)寸法だけです。残りの寸法は個別に割り当てることができ、各行は独自の長さを持つことができるため、 Java 2次元配列は正しい ギザギザ配列.
例:
public class Guru99 { public static void main(String[] args) { // Create a 2-dimensional array with 4 rows and 4 columns. int[][] twoD = new int[4][4]; // Assign three elements to it. twoD[0][0] = 1; twoD[1][1] = 2; twoD[3][2] = 3; System.out.print(twoD[0][0] + " "); } }
期待される出力:
1
