public class Main {
public static void main(String[] args) {
boolean[] flags = new boolean[3];
System.out.println(flags[1]);
}
}
選択肢
- あなたの回答
- 正解
正解
B. false
詳細解説
配列の要素は型に応じた初期値で初期化されます。boolean の初期値は false なので、flags[1] は false です。
なぜ他の選択肢が違うのか
- boolean の初期値は true ではありません。
- boolean はプリミティブ型なので null にはなりません。
- 配列の範囲内でアクセスしているため、コンパイルも実行も可能です。
罠ポイント
ローカル変数そのものは自動初期化されませんが、new された配列の各要素は初期化されます。