装箱和取消装箱
装箱和取消装箱使值类型能够被视为对象。对值类型装箱将把该值类型打包到 Object 引用类型的一个实例中。这使得值类型可以存储于垃圾回收堆中。取消装箱将从对象中提取值类型。在此示例中,整型变量 i 被“装箱”并赋值给对象 o 。 int i = 123; object o = (object)i; // boxing 然后,可以对对象 o 取消装箱并将其赋值给整型变量 i : o = 123; i = ( int )o; // unboxing 性能: 相对于简单的赋值而言,装箱和取消装箱过程需要进行大量的计算。对值类型进行装箱时,必须分配并构造一个全新的对象。次之,取消装箱所需的强制转换也需要进行大量的计算。 来源: https://www.cnblogs.com/abcdwxc/archive/2007/11/23/970075.html