package ktest;
public class K1 {
public static void main(String[] args) {
int a = 10; //声明变量
Integer i = new Integer(a);//手动装箱--法1
Integer j = Integer.valueOf(a);//手动装箱--法2
int k = Integer.parseInt(j.toString());//手动拆箱--法1
int p = j.intValue();手动拆箱--法2
System.out.println(k);
System.out.println(p);
//自动拆装箱
//生成一个数值为20的Integer对象
Integer b = 20; //自动装箱--相当于Integer.valueOf(int)方法
int c = b; //拆箱--相当于Integer.intValue()方法。
/*
* 装箱就是 自动将基本数据类型转换为包装器类型;
* 拆箱就是 自动将包装器类型转换为基本数据类型
* 装箱不改变值,只改变为包装类类型Integer.valueOf(a)
* 拆箱可以获取各种基类型的值i.floatValue()、i.doubleValue()、、、
*
* java5之后可以自动拆箱和装箱
* 装箱过程是通过调用包装器的valueOf方法实现的,
* 而拆箱过程是通过调用包装器的 xxxValue方法实现的
*/
System.out.println("装箱后的类型"+i.getClass());
System.out.println(j.getClass());
System.out.println(a);
System.out.println(i);
System.out.println("拆箱为float "+i.floatValue());
System.out.println("拆箱为double "+i.doubleValue());
System.out.println("拆箱前的类型"+b.getClass());
System.out.println(b);
System.out.println(c);
}
}