null を連結する
出力はどれか。
public class Main {
public static void main(String[] args) {
String s = null;
s = s + "!";
System.out.println(s + " " + s.length());
}
}
- A
null! 5 - B
! 1 - C 実行時に例外が発生する
- D コンパイルエラーになる
正解と解説を見る
正解: A
- A:
+の連結では null は "null" として扱われ、"null!" (5文字) になります。 - B: null は空文字ではなく "null" という4文字として連結されます。
- C:
+による連結では null でも例外になりません (メソッドを呼んだ場合は例外です)。 - D: String 型の変数に null を入れて連結するのは正しいコードです。
ポイント
+による連結では、null は "null" という文字列として扱われます。例外にはなりません。- 結果の "null!" は5文字です。ただし null のままメソッドを呼ぶと NullPointerException です。
「文字列の作成と操作 (テキスト・ブロックを含む)」をこのサイトで解く (記録・間違えた問題の解き直し・AI教師への質問)