今天在修改程序的时候,发现一个小细节的问题,对此进行了总结下:
一个简单的例子如下:
ArrayList<Integer> list=new ArrayList<Integer>();
Long id=10006L;
list.add(10006);
System.out.println(list.contains(id));
--------------------
运行后,打印是false。
之前想当然认为,java会自己转换类型进行比较,但是实际的运行情况确不是这样的,
不管是Long还是long都不能得到true的情况,
必须定义成int、Integer类型或进行类型转换处理才行。