加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

c# – 何时返回IEnumerable

发布时间:2020-12-16 00:02:44 所属栏目:百科 来源:网络整理
导读:参见英文答案 Should I always return IEnumerableT instead of IListT?????????????????????????????????????13个 ???????????? IEnumerableT as return type????????????????????????????????????10个 我应该返回IEnumerable T仅在延迟评估的情况下从方法
参见英文答案 > Should I always return IEnumerable<T> instead of IList<T>?????????????????????????????????????13个
>???????????? IEnumerable<T> as return type????????????????????????????????????10个
我应该返回IEnumerable< T>仅在延迟评估的情况下从方法和属性?

当你返回IEnumerable,ICollection和IList时,你有没有任何模式?

解决方法

每当调用者只需要从头到尾迭代集合时,我就会返回IEnumerable.通过使用最小可能的接口,我确保调用代码不会过于紧密耦合,从而使以后更容易更改方法或属性中的代码.如果它仍然返回IEnumerable,则没有其他人需要关心.如果它之前返回List并且new方法在内部表示使用HashSet的东西,那么其他很多事情也必须改变.

因此,我总是喜欢返回集合接口而不是具体集合,除非调用代码确实需要确切知道它正在处理什么类型的集合.我考虑调用者需要能够执行的操作,并找到支持它们的最小接口.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读