Java SE 17 Gold (1Z0-826-JPN) 試験 / コレクションとジェネリクス ・ 無料問題 4/5
コレクションとジェネリクス 問題4[オート・ボクシングの使用]
次のコードを実行した結果として正しいものを選んでください。
import java.util.*;public class Main { public static void main(String[] args) { Map<String, Integer> stock = new HashMap<>(); stock.put("apple", 3); int n = stock.get("apple") + stock.get("orange"); System.out.println(n); }}選択肢
- A.3 と出力される
- B.コンパイルエラーになる
- C.0 と出力される
- D.実行時に NullPointerException が発生する正解
解説実行して確認済み
存在しないキーを get すると null が返ります。+ 演算のために Integer を int にアンボクシングしようとすると、null に対して intValue() を呼ぶことになり NullPointerException が発生します。キーがないときの値を決めたい場合は getOrDefault("orange", 0) を使います。
この問題の答えは、試験の対象バージョンでコードを実際に実行して確かめています。確かめ方は運営者情報に書いています。
Java SE 17 Gold (1Z0-826-JPN) 試験 の他の分野の無料問題
ここで公開しているのは無料範囲の問題です。無料登録すると、解答の記録・ダッシュボードでの復習ができ、 プレミアムならこの問題セットの全問題と本番形式の模擬試験も解けます。