java中Integer对象的比较

1、执行一下代码,通过:
@Test
public void testInteger() {
    Integer a = Integer.valueOf(1);
    Integer b = Integer.valueOf(1);
    Assert.assertTrue(a == b);
}
2、执行一下代码,失败:
@Test
public void testInteger() {
    Integer a = Integer.valueOf(128);
    Integer b = Integer.valueOf(128);
    Assert.assertFalse(a == b);
}
执行数值不是太大的,用 == 是正确的,但是比较大的数值是错误的。
3、归根揭底,对象的比较应该用equals方法,通过
@Test
public void testInteger() {
    Integer a = Integer.valueOf(128);
    Integer b = Integer.valueOf(128);
    Assert.assertFalse(a.equals(b));
}


展开阅读全文

没有更多推荐了,返回首页