星空网 > 软件开发 > ASP.net

C#泛型的性能优势

  我写东西一向追求短小精悍,就不放代码去验证的,只说结论,并会与Java泛型做对比。有不对之处还望指出。

  泛型作为一个在C#2.0中就引入的特性,也是C#的重要特性之一,我经常看到有人讨论泛型带来的便捷性和(一定程度上的)安全性,却很少见有人说泛型的性能优势,要么点到即止要么泛泛而谈说得太复杂——可能仅仅是因为我孤陋寡闻吧……

  好了,废话不说了,以下是结论:

 

  如果你要用一个ArrayList add一个byte,我们看看会发生什么。

  假设在一个32位CLR上,对对象进行装箱要消耗8字节,用4字节存储数据(因为要向上取整),还有4字节是引用——这就用了16字节了。而如果使用List<byte>,因为类型参数已经确定,每一个byte只会产生1字节用来储存。

  再来看JAVA的泛型……JAVA大家都知道了……因为类型擦除,泛型没有什么性能优势,还是相当于一个普通的ArrayList,要对所有类型进行类似C#中的“装箱”,唯一的好处就是安全性了。

 

  一路写下来好像没什么好说的……为什么要说这个呢,请看类标题。我有一个不成熟的乐趣就是吹.NET黑JAVA,突然想起一点就记下来了……




原标题:C#泛型的性能优势

关键词:C#

C#
*特别声明:以上内容来自于网络收集,著作权属原作者所有,如有侵权,请联系我们: admin#shaoqun.com (#换成@)。

Shopee开辟新市场—巴西市场开放!:https://www.ikjzd.com/articles/116628
声音|做虾皮Shopee,大概率会交的 “智商税”:https://www.ikjzd.com/articles/116629
社交媒体营销真的很简单!:https://www.ikjzd.com/articles/11663
Shopee跨境如何做好无货源?:https://www.ikjzd.com/articles/116630
卖家注意!亚马逊Sponsored Product Ads价格或将持续攀升:https://www.ikjzd.com/articles/116631
亚马逊放宽产品库存存放周期,解决卖家库存问题:https://www.ikjzd.com/articles/116632
皇家游轮航线 皇家邮轮旅游攻略:https://www.vstour.cn/a/408245.html
2017春节旅游攻略有吗:https://www.vstour.cn/a/408246.html
相关文章
我的浏览记录
最新相关资讯
海外公司注册 | 跨境电商服务平台 | 深圳旅行社 | 东南亚物流