Integer已经重载了equals方法,实现如下:
public boolean equals(Object obj) {
if (obj instanceof Integer) {
return value == ((Integer)obj).intValue();
}
return false;
}
所以你使用integer的equeals方法时会比较的是里面的值,上面的代码是JDK源码里面的interger的equals方法,看到这个应该很明白了
int 好像就是integer,只不过int是值类型;integer是类,“==”跟"equals()“一个效果
现在有自动包装解包 所以int和Integer可以这么用
楼上的说的很好。