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的东西,那么其他很多事情也必须改变.
因此,我总是喜欢返回集合接口而不是具体集合,除非调用代码确实需要确切知道它正在处理什么类型的集合.我考虑调用者需要能够执行的操作,并找到支持它们的最小接口. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |