int和Integer的比较

Integer a = new Integer(5)
Integer b = new Integer(5)

Integer c = 5
Integer d = 5

Integer e = 128
Integer f = 128

int g = 128

System.out.println(a==b)   false   对象比较前两个不相等
System.out.println(b==c)   false   c,d小于127所以返回integerCache中已有的地址
System.out.println(c==d)   true    所以c==d
System.out.println(e==f)   false   e,f大于127所以创建对象,对象所以不一样
System.out.println(f==g)   true    g为int型 f自动拆箱为int进行比较,所以相等
    
posted @ 2020-01-07 14:23  这都没什么  阅读(143)  评论(0编辑  收藏  举报