Kodrill

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

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

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

Main.java
import java.util.*;​public class Main {    public static void main(String[] args) {        List<Integer> list = new ArrayList<>(List.of(1, 2, 3));        list.remove(1);        list.remove(Integer.valueOf(1));        System.out.println(list);    }}

選択肢

  • A.[3]正解
  • B.[2, 3]
  • C.[1, 3]
  • D.[3, 2]

解説

List には remove(int index) と remove(Object o) の2つのオーバーロードがあります。list.remove(1) は引数が int なので、ボクシングせずに済む remove(int) が選ばれ、インデックス1の要素 2 が削除されて [1, 3] になります。list.remove(Integer.valueOf(1)) は remove(Object) が呼ばれ、値 1 が削除されて [3] になります。

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

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