Rob*_*bin 61 .net c# ienumerable list
通过阅读类似的帖子,我了解到List是一种IEnumerable.但我真的很想知道这两者之间的实际区别是什么.
对于总是使用List并且从未使用IEnumerable的人:
这是一个实际的例子:我们想要存储四个字符串,按字母顺序排序,将它们传递给另一个函数,然后向用户显示结果.我们会用什么?为什么?
希望有人可以为我排序或指出我正确的方向.提前致谢!
Sco*_*nce 173
IEnumerable和List之间的一个重要区别(除了一个是接口而另一个是具体类)是IEnumerable是只读的而List不是.
因此,如果您需要能够对您的收藏(添加和删除)进行任何类型的永久性更改,您将需要列表.如果您只需要阅读,排序和/或过滤您的集合,IEnumerable就足够了.
所以在你的实际例子中,如果你想一次添加四个字符串,你需要List.但是,如果您同时实例化您的集合,则可以使用IEnumerable.
IEnumerable firstFourLettersOfAlphabet = new[]{"a","b","c","d"};
Run Code Online (Sandbox Code Playgroud)
然后,您可以使用LINQ过滤或排序列表,无论您想要什么.