長さがそろっていない2次元配列
出力はどれか。
public class Main {
public static void main(String[] args) {
int[][] m = {{1, 2}, {3, 4, 5}, {}};
System.out.println(m.length + " " + m[1].length + " " + m[2].length);
}
}
- A
3 3 0 - B
2 3 0 - C
3 2 0 - D コンパイルエラーになる
正解と解説を見る
正解: A
- A: 行の数は 3、2行目 {3, 4, 5} の長さは 3、空の {} の長さは 0 です。
- B:
m.lengthは行の数です。空の {} も1行として数えます。 - C: m[1] は2行目 {3, 4, 5} で、長さは 3 です。
- D: 行ごとに長さが違う2次元配列も作れます。
ポイント
- Java の2次元配列は「配列の配列」なので、行ごとに長さが違ってもかまいません。空の
{}は長さ 0 です。
「配列 (一次元配列、二次元配列) の宣言、インスタンス化、初期化および使用」をこのサイトで解く (記録・間違えた問題の解き直し・AI教師への質問)