/**
* 包装类与包装类
*/
Integer x = 123;
Integer y = 123;
Integer z = new Integer(123);
Long l = 123l;
Double d = 123.1;
System.out.println("1." + x.equals(y));
System.out.println("2." + x.equals(z));
System.out.println("3." + x.equals(l));//equals比较的是对象本身,只有同个类的对象才有可能equals阿!
System.out.println("4." + (x == y));
System.out.println("5." + (x<=d)); //不同包装类,是可以用<,>这些比较它们的值的,因为他们会拆箱
/**
* 对于基本类型
*/
int x2 = 23;
long l2 = 23l;
double d2 = 23.1;
System.out.println("6." + (x2 == l2));//对于基本类型,int,long,double这些都是可以直接用 ==,<这些运算符比较数值大小的!
System.out.println("7." + (x2 > d2));
/**
* 包装类和基本类型
*/
Integer i1 = 123;
int i2 = 123;
long l3 = 123;
System.out.println("8." + i1.equals(i2));
System.out.println("9." + i1.equals(l3));//equals比较的是对象本身!long装箱之后是Long,跟Integer是不可能equals的
System.out.println("10." + (i1 == i2));
System.out.println("11." + (i1 == l3));//==是拆箱之后比较数值
运行结果是:
1.true
2.true
3.false
4.true
5.true
6.true
7.false
8.true
9.false
10.true
11.true