微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

c# – 最佳实践:嵌套ForEach

嵌套“foreach”的数量是否有最佳实践?

那就是我在复杂的词典中徘徊在嵌套的“foreach”中,是否有一点它开始产生“可能”阻碍性能的开销?这是否值得考虑.

使其具体而不是主观的:
我有3个复杂词典,看起来像这样;

Dictionary<int,Dictionary<string,XObject>()
Dictionary<string,List<YObject>()
Dictionary<string,List<ZObjects>()

显然现在,当我过滤这些词典(在foreach中)时,为了生成我正在寻找的数据,我的代码的结构朝向除了外面1之外的5个嵌套“foreach”.在回答这些是I’的区域担心可能会受到影响:

>性能(上下文切换太多)
>内存(在给定时刻保留内存中的所有数据集)
>可维护性(糟糕的程序员!)

最佳做法还是无所谓?

解决方法

> foreach语句没有“上下文切换”. >内存:完全不相关,内存是由数据而不是由枚举器(由foreach语句使用)获取的 >可维护性:考虑重构代码,添加执行项目的方法

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐