从列表中正确删除整数<整数>
2022-08-31 06:03:46
这是我刚刚遇到的一个很好的陷阱。考虑一个整数列表:
List<Integer> list = new ArrayList<Integer>();
list.add(5);
list.add(6);
list.add(7);
list.add(1);
关于执行时会发生什么的任何有根据的猜测?怎么样?这可能会导致一些令人讨厌的错误。list.remove(1)
list.remove(new Integer(1))
在处理整数列表时,区分 remove(int index)
(从给定索引中删除元素) 和 remove(Object o)(
通过引用删除元素) 的正确方法是什么?
这里要考虑的要点是@Nikita提到的一点 - 精确参数匹配优先于自动装箱。