装箱与拆箱性能损耗详解

本文详细探讨了装箱和拆箱的概念,指出装箱是值类型到引用类型的过程,而拆箱则涉及引用类型到值类型的转换。装箱会产生新的引用对象,从而带来性能损耗。总结了装箱、拆箱的规则,强调了类型匹配的重要性,并通过实例说明了错误拆箱可能导致的后果。
摘要由CSDN通过智能技术生成

拆箱是将引用类型转换为值类型 ;反之,装箱!

利用装箱和拆箱功能,可通过允许值类型的任何值与Object 类型的值相互转换,将值类型与引用类型链接起来 ;

例如: int val = 100; 
	    object obj = val; 
           Console.WriteLine (“对象的值 = ",obj); 

这是一个装箱的过程,是将值类型转换为引用类型的过程 

    int val = 100;
	object obj = val; 
	int num = (int) obj; 
	Console.WriteLine ("num: ",num); 

这是一个拆箱的过程,是将值类型转换为引用类型,再由引用类型转换为值类型的过程

显然,从原理上可以看出,装箱时,生成的是全新的引用对象,这会有时间损耗,也就是造成效率降低。看下面代码

 class Program
    {
        static void Mai
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值