System.out.println(new Long(10).equals(10L));
System.out.println(new Long(1000).equals(1000));
返回 true,false
我比较2个Long包装类型的值,调用equals方法在数字后面加上L才能相等这是为啥呢,Long类的equals方法是这样写的
public boolean equals(Object paramObject)
{
if ((paramObject instanceof Long)) {
return this.value == ((Long)paramObject).longValue();
}
return false;
}
if(paramObject instanceof Long)
一个非Long型参数在这里就是false了