English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
このチュートリアルでは、サンプルを使用して2多維配列と3Javaの多維配列。
多維配列を学ぶ前に、あなたが理解していることを確認してください。Java 配列。
マルチディメンショナル配列は配列の配列です。マルチディメンショナル配列の各要素は配列自体です。例えば、
int[][] a = new int[3][4];
ここでは、名前がaのマルチディメンショナル配列を作成し、それは最大で以下の容量を持つ二次元配列です。12要素があります。
Javaではゼロベースのインデックスを使用しており、つまり、Javaの配列のインデックスは0から始まるため、1開始します。
もう一つのマルチディメンショナル配列の例を示しましょう。今度は以下のように作成します3次元配列の例です。
String[][][] data = new String[3][4][2];
ここでは、dataは三つの次元を持つ配列で、最大で以下の容量を持ちます24(3*4*2)のString型の要素が入ります。
これはJavaで二次元配列を初期化する方法です。
int[][] a = { {1, 2, 3}, {4, 5, 6, 9}, {7}, };
私たちが見たように、マルチディメンショナル配列の各要素は配列自体です。さらに、C / C ++異なります。Javaでは、マルチディメンショナル配列の各行は異なる長さを持つことができます。
class MultidimensionalArray { public static void main(String[] args) { //二次元配列の作成 int[][] a = { {1, 2, 3}, {4, 5, 6, 9}, {7}, }; //各行の長さを計算 System.out.println("第1行の長さ: " + a[0].length); System.out.println("第2行の長さ: " + a[1].length); System.out.println("第3行の長さ: " + a[2].length); } }
出力:
第1行の長さ: 3 第2行の長さ: 4 第3行の長さ: 1
上記の例では、名前がaのマルチディメンショナル配列を作成し、マルチディメンショナル配列の各コンポーネントも配列であるため(a[0],[1]とa[2]も配列です)。
ここでは、length属性を使用して各行の長さを計算します。
class MultidimensionalArray { public static void main(String[] args) { int[][] a = { {1, -2, 3}, {-4, -5, 6, 9}, {7}, }; for(int i = 0; i < a.length; ++i) { for(int j = 0; j < a[i].length; ++j) { System.out.println(a[i][j]); } } } }
出力:
1 -2 3 -4 -5 6 9 7
さらに、以下を使用することもできますfor...eachループマルチディメンショナル配列の要素にアクセスする方法です。例えば、
class MultidimensionalArray { public static void main(String[] args) { //二次元配列の作成 int[][] a = { {1, -2, 3}, {-4, -5, 6, 9}, {7}, }; //まず、単一の配列にアクセスするfor...eachループを利用します //二次元配列の中で for(int[] innerArray : a) { //二回目のfor...eachループで行内の各要素にアクセスします for(int data : innerArray) { System.out.println(data); } } } }
出力:
1 -2 3 -4 -5 6 9 7
上記の例では、名前がaの二次元配列を作成し、forループとfor...eachループを使用して配列の各要素にアクセスしました。
Javaでどのように三次元配列を初期化するかを見てみましょう。3d配列。例えば、2d配列の3d配列。例えば、
// test is a 3d array int[][][] test = { { {1, -2, 3}, {2, 3, 4} }, { {-4, -5, 6, 9}, {1}, {2, 3} } };
基本的に、3d配列は2d配列の配列。三次元配列の行も二次元配列のように長さが変化する可能性があります。
class ThreeArray { public static void main(String[] args) { // 三次元配列の作成 int[][][] test = { { {1, -2, 3}, {2, 3, 4} }, { {-4, -5, 6, 9}, {1}, {2, 3} } }; //for..each ループの迭代3d配列の要素 for (int[][] array2D: test) { for (int[] array1D: array2D) { for(int item: array1D) { System.out.println(item); } } } } }
出力:
1 -2 3 2 3 4 -4 -5 6 9 1 2 3