装箱:把基本类型用它们相应的引用类型包装起来,使其具有对象的性质。int包装成Integer、float包装成Float
拆箱:和装箱相反,将引用类型的对象简化成值类型的数据
Integer a = 100; 这是自动装箱 (编译器调用的是static Integer valueOf(int i))
int b = new Integer(100); 这是自动拆箱
看下面一段代码
public class DataType {
public static void main(String args[]) {
DataType dt = new DataType();
dt.m11();
dt.m12();
}
public void m11() {
Integer a = new Integer(100);
Integer b = 100;
System.out.println("m11 result " + (a == b));
}
public void m12() {
Integer a = new Integer(128);
Integer b = 128;
System.out.println("m12 result " + (a == b));
}
}
打印结果是什么?
m11 result false
m12 result false