本帖最后由 黑马-柯校 于 2014-6-15 13:46 编辑  
 
首先是概念: 
装箱:将值类型转换为引用类型。 
拆箱:将引用类型转换为值类型。 
int n = 10; 
object o = n;//发生了一次装箱 
int m = (int)o;//发生了一次拆箱 
 
注意1:装箱的时候是什么类型,拆箱的时候也用什么类型 
int n = 10; 
object obj = n; 
double d = (double)obj;//报错,只能用int来拆箱。 
 
注意2:装箱和拆箱只限于值类型→引用类,引用类型→值类型。 
string s = "10"; 
object obj = s; 
string x = (string)obj;//不是装箱或拆箱。(装箱和拆箱只限于值类型→引用类,引用类型→值类型。 ) 
 
注意3: 
int i = 10; 
string s = Convert.ToString(i);//不是装箱,int类型为什么能装箱到object类型,但不能装箱到string类型,因为object类型是int类型的父类。 
                                                          
 |