在装箱操作时,运行时会在托管堆上分配一个空间,存放a 中的10,并标志这块空间的装箱类型是int。
如图:

2.拆箱
那拆箱就跟装箱相反,就是将引用类型还原会值类型。
- int a = 10; object obj = a; //将值类型转换引用类型 装箱
- int b = (int)obj; //将引用类型转换为值类型 拆箱
当拆箱时我们会将推中的10强制类型转换放到栈空间中(图中代表int b)。
如图

3.装箱与拆箱的作用
当我需要显示的方法,分别来显示 int float double类型的值到控制台。一般我们的设计方法如下:
- class MyProgram {
- //用来打印int类型的值 public static void ShowInt(int a)
- { Console.WriteLine(" a ="+a.ToString());
- }
- //用来打印float类型的值 public static void ShowFloat(float a)
- { Console.WriteLine(" a ="+a.ToString());
- }
- //用来打印double类型的值 public static void ShowDouble(double a)










