为什么设计包装类
1、面向对象编程;
2、提高程序的通用性;(包装类也继承Object,可作为参数传给Object形参)
用法:
// 生成包装类;1、调用构造器;2、自动装箱
Integer i1 = new Integer(1000);
Integer i2 = 800;
Integer i3 = null;
// 包装类变成数值; 1、调用方法;2、自动拆箱
int n1 = i1.intValue();
int n2 = i1;
int n3 = 800;
// 包装类和包装类,包装类和数值:比大小(不能和null比)、判断相等
System.out.println(i1.compareTo(i2));
System.out.println(i1.compareTo(n3));
System.out.println(i1 > i2);
System.out.println(i1 > n3);
System.out.println(i1.equals(i2)); //判断有值的包装类是否等于包装类or数值or null
System.out.println(i1.equals(n3));
System.out.println(i1 == i2);
System.out.println(i1 == n3);
// 结论:(有包装类时)
// 1、比大小建议用>/<符号;
// 2、判断是否相等,建议用equals()方法,它可以对两个包装类进行值比较,因为重写了Object对象的equals()方法,而Object对象原来的equals()方法不能进行值比较,和==一样要指向同一对象才行。很多类都重写了此方法,来进行值比较(==不能用于两个包装类,因为只有两个引用指向同一个对象时才为TRUE);
// 3、==可以用来判断对象是否为null
System.out.println(i1 == null);