Integer x=1;
Integer z=new Integer(1);
Integer y=1;
System.out.println(x==1); //true
System.out.println(x.intValue()==z.intValue()); //true x对象由自动装包而得到 z是一个new出来的新对象 所以能用==
System.out.println(z==1); //true z 会自动拆包
System.out.println(x==y); //true 这个为true猜测原因应该是 x y均为同一个数值(1)自动装包而成的 指向的是同一个对象
System.out.println(x.equals(y)); //trueSystem.out.println(x>y); //falseSystem.out.println(x>z); //falseSystem.out.println(z>y); //falseSystem.out.println(z.equals(y)); //true
在比较Nunber类型数据时需要注意自动装包和拆包的问题 如果2个值均为对象 一定不能使用操作符 (除非 手动拆包,调用intValue,doubleValue等方法),
而是使用 equals或者compareTo方法。