配列の中身(要素)を表示したい時の例文 いろいろ | 超初心者のJavaの勉強

配列の中身を取り出すのは初心者にはややこしいです。System.out.print();で変数名入れて取り出せたらいいのに。
for文をうまいこと使って配列の中の値を取得しなければなりません。

すぐに覚えられるわけでもないので、チート用にまとめてみました。
応用すれば値をすべて足すのも容易です。

配列 (1次元)の中身を1つだけ確認

配列の中身の要素を1つだけ取得する。

String[] week = {“月曜”, “火曜”, “水曜”, “木曜”, “金曜”, “土曜”, “日曜”};
System.out.println(week[0]);
//月曜
System.out.println(week[1]);
//火曜
//
//
System.out.println(week[6]);
//日曜

配列 (1次元)の中身を全部確認

[ ] コ型のかっこが入ってもいいなら

デバッグ中によく使いそう。

String[] week = {“月曜”, “火曜”, “水曜”, “木曜”, “金曜”, “土曜”, “日曜”};
System.out.println(Arrays.toString(week));
// [月曜, 火曜, 水曜, 木曜, 金曜, 土曜, 日曜]

intもcharもdoubleなどでもArrays.toStringで中身を表示して確認できます。

シンプルにfor文で値を全て取得

初心者に馴染みのあるfor文。

String[] week = {“月曜”, “火曜”, “水曜”, “木曜”, “金曜”, “土曜”, “日曜”};
for (int i = 0; i < 7; i++) {
System.out.println(week[i]);
}

シンプル + length使って値を全て取得

配列の長さを「変数名.length」で取得する。

String[] week = {“月曜”, “火曜”, “水曜”, “木曜”, “金曜”, “土曜”, “日曜”};
for (int i = 0; i < week.length ; i++) {
System.out.println(week[i]);
}

拡張for文で値を全て取得

シンプルでいい。

String[] week = {“月曜”, “火曜”, “水曜”, “木曜”, “金曜”, “土曜”, “日曜”};
for(String day : week){
System.out.println(day);
}

int型の配列を扱う時は for(int 変数名 : 配列の変数名 )というように配列の型合わせる必要がある。

2次元配列の中身を1つだけ確認

2次元配列の中身の要素を1つだけ取得する。

String[][] week = {{“月曜”, “火曜”, “水曜”, “木曜”, “金曜”}, {“土曜”, “日曜”}};
System.out.println(week[0][0]); //月曜
System.out.println(week[0][1]); //火曜
//
//
System.out.println(week[1][1]); //日曜

多次元配列の中身を全部確認

[ ] コ型のかっこが入ってもいいなら

2次元配列でも簡単に中身の確認ができる。

String[][] week = {{“月曜”, “火曜”, “水曜”, “木曜”, “金曜”}, {“土曜”, “日曜”}};
System.out.println(Arrays.deepToString(week));
// [[月曜, 火曜, 水曜, 木曜, 金曜], [土曜, 日曜]]

2次元以上でもArrays.deepToStringで中身を表示して確認できます。

for文で多次元の値を1つずつ全て取得 length使う

多次元になってくるとややこしい。

String[][] week = {{“月曜”, “火曜”, “水曜”, “木曜”, “金曜”}, {“土曜”, “日曜”}};
for (int i = 0; i < week.length; i++) {
// week.lengthで1次元の配列の長さ
for (int k = 0; k < week[i].length; k++) { // week[i].lengthでi番目の配列の長さ
System.out.print(week[i][k] +” “);
//月曜 火曜 水曜 木曜 金曜 土曜 日曜
}
}

次元が増えるごとにfor文も増えていきます。

for (int i = 0; i < week.length; i++) {
for (int k = 0; k < week[i].length; k++) {
for (int m = 0; m < week[i][k].length; m++) {
// week[i][k].lengthでi番目の中のk番目の配列の長さ
System.out.print(week[i][k][m] +” “);
//月曜 火曜 水曜 木曜 金曜 土曜 日曜
}

 }
}

拡張for文で値を1つずつ全部取得

3次元のサンプルコードです。

String[][][] week = {{{“月曜”, “火曜”},{ “水曜”, “木曜”, “金曜”}}, {{“土曜”},{ “日曜”}}};
for(String[][] days : week){
// 2次元配列に値を移行
for(String[] day : days){
// 配列に値を移行
for(String a : day){
System.out.print(a + ” “);
}
}
}

こちらも次元数に合わせてfor文が増えていきます。
拡張for文の方がわかりやすいです。

さいごに

繰り返し文はややこしいです。
他にもあれば教えていただければと思います。

<div data-vc_mylinkbox_id="885984290"></div>