Java自动拆装箱作为一种语法糖并非在任何情况下都能让使用者感到“便利”。
例:
public class demo1 {
public static void main(String[] args) {
Integer a =1;
Integer b =2;
Integer c =3;
Integer d =3;
Integer e =321;
Integer f =321;
Long g =3L;
System.out.println(c==d);
System.out.println(e==f);
System.out.println(c==(a+b));
System.out.println(c.equals(a+b));
System.out.println(g==(a+b));
System.out.println(g.equals(a+b));
}
}

包装类在遇到没有遇到运算的情况下,==不会自动拆箱。
因此我们在写代码是要尽可能避免包装类的直接比较运算。