值类型和引用类型间的转换-装箱和拆箱

装箱(Boxing)和拆箱(Unboxing)是C#类型系统中重要的概念。它允许将任何类型的数据转换为对象,同时也允许任何类型的对象转换到与之兼容的数据类型。

1.装箱

装箱转换是指将一个值类型的数据隐式地转换成一个对象类型(object)的数据。
例如:
int i=20;
object o=i;

2.拆箱

拆箱转换是一个与装箱转换相反的操作,拆箱用于把object类型转换为数值类型,或者把任意接口类型转换成一个执行该接口的数值类型。
int i=20;
object o=i;
int i=(int)o;

值类型与引用类型

1、值类型包括原类型(Sbyte、Byte、Short、Ushort、Int、Uint、Long、Ulong、Char、Float、Double、Bool、Decimal)、枚举(enum)、结构(struct)。
2、引用类型包括类、数组、接口、委托、字符串等。


你可能感兴趣的:(C#)