上級 › オートボクシングで起きる NullPointerException › パターン3
オートボクシングで起きる NullPointerException
Integerはnullを持てますが、演算時にintへ開封されます。
1 import java.util.List; 2 3 public class Main { 4 public static void main(String[] args) { 5 List<Integer> list = List.of(10, 20, 30); 6 list.remove(__________________); ^ 7 System.out.println(list); 8 } 9 }
remove(1) は添字1の要素を消し、remove(Integer.valueOf(1)) は値1を探して消す(どちらもコンパイルは通ります)
空欄を埋めてビルドを通す
Listのremoveはintとオブジェクトで意味が変わる数少ない例です。意図をキャストで明示します。
次の問題