var で推論される型
出力はどれか。
public class Main {
public static void main(String[] args) {
var c = 'a';
var n = c + 1;
System.out.println(n);
}
}
- A
98 - B
b - C
a1 - D コンパイルエラーになる
正解と解説を見る
正解: A
- A: c は char、
c + 1は int なので n は int 型です。97 + 1 で 98 になります。 - B:
c + 1の結果は int なので、文字ではなく数値として出力されます。 - C: 文字列が含まれていないので連結にはなりません。
- D: var は右辺から int と推論できるので、コンパイルできます。
ポイント
- c は char、
c + 1は int なので、n は int 型になります。'a' の文字コード 97 に 1 を足して 98 です。