Kodrill

Java SE 17 Gold (1Z0-826-JPN) 試験 / コレクションとジェネリクス ・ 無料問題 1/5

コレクションとジェネリクス 問題1[オート・ボクシングの使用]

次のコードを実行したときの出力を選んでください。

Main.java
public class Main {    public static void main(String[] args) {        Integer a = 127, b = 127;        Integer c = 128, d = 128;        System.out.println((a == b) + " " + (c == d) + " " + c.equals(d));    }}

選択肢

  • A.true false false
  • B.false false true
  • C.true true true
  • D.true false true正解

解説実行して確認済み

オートボクシングは Integer.valueOf を使い、-128〜127 の値はキャッシュされた同じオブジェクトを返します。そのため a == b は true ですが、128 は毎回別のオブジェクトになるので c == d は false です。equals は値を比べるので true です。ラッパー型どうしを == で比べると参照の比較になる点に注意しましょう。

この問題の答えは、試験の対象バージョンでコードを実際に実行して確かめています。確かめ方は運営者情報に書いています。

「コレクションとジェネリクス」の要点を解説記事で読む

「コレクションとジェネリクス」の無料問題

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