Kodrill

Java SE 17 Silver (1Z0-825-JPN) 試験 / Javaの基本データ型と文字列の操作 ・ 無料問題 2/3

Javaの基本データ型と文字列の操作 問題2[変数の宣言および初期化と変数のスコープ]

次のコードをコンパイルした結果として正しいものを選んでください。

Main.java
public class Main {    public static void main(String[] args) {        final int x = 100;        byte a = x;        int y = 100;        byte b = y;        System.out.println(a + b);    }}

選択肢

  • A.コンパイルに成功し、実行すると 200 と出力される
  • B.4行目でコンパイルエラーになる
  • C.6行目でコンパイルエラーになる正解
  • D.4行目と6行目でコンパイルエラーになる

解説

int から byte への代入は、通常はキャストが必要です。ただし、値がコンパイル時に決まる定数 (final を付けてリテラルで初期化した変数など) で、byte の範囲 (-128〜127) に収まる場合は、キャストなしで代入できます。4行目の x はこれに当たるので成功し、6行目の y は定数ではないのでコンパイルエラーです。

「Javaの基本データ型と文字列の操作」の無料問題

ここで公開しているのは無料範囲の問題です。無料登録すると、解答の記録・ダッシュボードでの復習ができ、 プレミアムならこの問題セットの全問題と本番形式の模擬試験も解けます。