int a = 1;
Integer b = 1;
Integer c = new Integer(1);
System.out.println(a == b); // true
System.out.println(a == c); // true
System.out.println(b == c); // false
java中原始数据类型之间或者原始数据类型和它们的封装类的双等号(==)比较是比较它们的值,所以 ’a == b‘, 和 ’a==c‘ 的结果为true
b 和 c 是两个不同的对象,比较的是两个对象的地址,除非是同一个new出来的对象,否则它们的比较结果为false
Integer c = 1;
Integer d = 1;
System.out.println(c==d); // true