C#编程中装箱和拆箱之间的区别。

C#提供了两种方法将值类型链接到引用类型,反之亦然。这两种链接方法分别称为装箱和装箱,其中装箱用于将值类型转换为对象类型,而装箱是将对象类型转换为值类型。

以下是装箱和拆箱之间的重要区别。

序号拳击拆箱
1实作装箱使对象类型称为值类型。取消装箱基本上是处理装箱对象的检索值。
2存储在装箱的情况下,将存储在堆栈中的值复制到存储在堆内存中的对象。另一方面,在取消装箱的情况下,将存储在堆内存中的对象的值复制到存储在堆栈中的值类型。
3转换类型装箱一般称为隐式转换。拆箱是指显式转换。

装箱与拆箱的示例

JavaTester.java

public class JavaTester {
   public static void main(String[] args){
      int val = 119;
      //拳击
      Object o = val;
      //更改val的值
      val = 120;
      //拆箱
      int x = (int)o;
      System.out.println("Value of x is {0}"+ x);
      System.out.println("Value type of val is {0}"+val);
      System.out.println("Object type of val is {0}"+o);
   }
}

输出结果

Value of x is {0}119
Value type of val is {0}120
Object type of val is {0}119