1
装箱: 将值类型转换为引用类型的过程
拆箱:将引用类型转换为值类型的过程
装箱和拆箱都是在父类和子类的基础上
也就是显示转换和隐式转换
int n=10;
object o=n;//装箱
int m=(int)o;//拆箱
Console.WriteLine(m);
//由于Int32是结构,结构是值类型
由于Int32还是实现了Icomparable接口,接口是引用类型
Int32到Icomparable 发生了装箱,Icomparable到Int32发生了拆箱//
int n1=10;
Icomparable com=n1;//装箱
int m=(int)com;//拆箱
string s1="a";
string s2="b";
int s3=10;
double s4=1.0;
string.Concat(s1,s2,s3,s4); //Concat里面参数是object ,object是引用类型,string是引用类型,int,double 是值类型,所以发生两次装箱。
2
注意 装箱的时候 ,使用什么类型装的,拆箱的时候就必须使用对应的类型才能拆箱
|