首页 > 为什么1和2比较得true,3和4比较就得false?

为什么1和2比较得true,3和4比较就得false?

    Integer integer1 = 100;  
    Integer integer2 = 100;  
    System.out.println("integer1==integer2: " + (integer1 == integer2));// true  自动装箱的两个缓存中的 Integer对象的引用比较  
    System.out.println("integer1.equals(integer2): " + (integer1.equals(integer2)));// true  
    System.out.println("integer1.compare(integer2): " + integer1.compareTo(integer2));// 0      
    Integer integer3 = 200;  
    Integer integer4 = 200;  
    System.out.println("integer3==integer4: " + (integer3 == integer4));// false 自动装箱的两个new Integer的引用比较  
    System.out.println("integer3>integer4: " + (integer3 > integer4)); // false 将两个对象拆箱,再比较大小  
    System.out.println("integer3.equals(integer4): " + (integer3.equals(integer4)));// true  
    System.out.println("integer3.compare(integer4): " + integer3.compareTo(integer4));// 0     

看Integer源码

【热门文章】
【热门文章】