哪个更好,Enumerable.Empty还是new?这些都是一样的:IEnumerablei;i=Enumerable.Empty();我=新字符串[0];那么,使用哪一个?我认为第一个更清楚地传达了意图,但它更大更嘈杂,更不用说调试器中的丑陋了。如果我正在阅读Reflector,则第二个在内存和CPU方面也更有效率。我倾向于newtype[0],但想知道你们都在想什么。Enumerable.Empty缓存空数组的创建,因此将始终返回相同的数组,而第二条语句每次调用时都会创建一个新数组。我倾向于使用Enumerable.Empty,因为它更清楚地显示了程序员的意图,并且由于内存使用而使用显式数组创建是托管程序中的过早优化,因为运行时几乎总是分配超过必要的内存。在这种情况下,性能/内存使用的差异令人难以置信,所以这不是我的决定因素。我个人会使用Enumerable.Empty主要是因为它非常清楚地描述了开发人员的意图。看起来Enumerable.Empty委托给EmptyEnumerable,它返回一个长度为0的数组。但它每次都返回相同的数组,并使该空数组永远保持活动状态。以上就是C#学习教程:Enumerable.Empty和new哪个好?如果所有分享的内容对你有用,需要进一步了解C#学习教程,希望大家多多关注。本文收集自网络,不代表立场。如涉及侵权,请点击右侧联系管理员删除。如需转载请注明出处:
