说到装箱与拆箱,那就要简要的概括下什么是装箱拆箱,
装箱:其实就是把值类型转换为引用类型。
拆箱:其实就是把引用类型转换为值类型。
值类型:一般来说包括 int char bool double datetime等等这些,值类型存放在栈里面
引用类型:引用类型包括 object class Interface Delegate string arry dynamic,引用类型是存放在堆里的,占用的内存地址一般是连续的。
//装箱就是把值类型转换为引用类型
int i = 12;
object obj = i;
//拆箱就是把引用类型转换为值类型
i = (int) obj;
//装箱与拆箱是比较消耗性能的,能避免的尽量避免发生这样的行为。
string str3 = "123";
int i4 = 4;
Console.WriteLine(str3+i4);//这种装箱行为会影响效率,如何避免的,下面的方法
Console.WriteLine(str3+i4.ToString());//这是一种方法,可以提高点效率。
Console.ReadKey();
时间: 2024-10-12 08:17:46