Java 中 ArrayList remove() 的不良行为
2022-09-02 19:37:30
我有以下两种情况:
1. 整数值作为参数
int intNum = 2;
List<Integer> list = new ArrayList<Integer>();
list.add(1);
list.add(2);
list.add(3);
list.remove(intNum);
System.out.println(list.size());
// output: 2
2.长值作为参数
long longNum = 2;
List<Integer> list = new ArrayList<Integer>();
list.add(1);
list.add(2);
list.add(3);
list.remove(longNum);
System.out.println(list.size());
// output: 3
在这两种情况下,我都传递 2 作为值,但我得到的列表大小值不同。这种行为的真正原因是什么?
从列表中正确删除整数并不能解释内置数据类型具有相同的值,但如上所述具有不同的行为