c# - 有人可以告诉我 List、Collection 和 Enumerable 之间有什么区别?

标签 c# list collections ienumerable enumerable

当我做一个程序的时候,有时候我会有这样的疑惑。我一直在用List<T>但我没有用过其他的。

我想知道什么时候最好用,在什么情况下用。

最佳答案

我相信您可以自己阅读文档。我将在这里做一个简短的总结:

  1. IEnumerable 是一个在集合上公开枚举器的接口(interface)。如果希望能够支持迭代,例如在 foreach 循环中实现此接口(interface)。
  2. CollectionIEnumerable 的实现(因此您可以对其进行迭代),通常由希望具有类似集合行为的用户定义类进一步扩展(即使用 AddRemoveContains 等)。它也可以“按原样”使用。
  3. List 也是 IEnumerable 的实现(因此您可以对其进行迭代),通常“按原样”用作特定类型对象的容器.在后台使用动态调整数组,是 ArrayList 的通用等价物。

请注意,虽然 IEnumerable 可以是泛型和非泛型,但 CollectionList 只能用作泛型类。

关于c# - 有人可以告诉我 List、Collection 和 Enumerable 之间有什么区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8595105/

相关文章:

c# - 试图创建不可变类 - 私有(private)集被忽略

c# - 封装方法调用

c# - 将自定义类添加到列表时遇到问题 (C#)

c# - List<string> 获取特定字符串的方法

python - 连接列表中的字符串

java - 从不可变排序多重集中添加(删除)元素)

java - 如何使用 Spring Data(MongoDB) 映射通用集合?

c# - 是否可以保证枚举的 ToString 的值是多少?

java - 根据对象列表中的某些字段获取最小对象

c# - 如何实现带有页眉和页脚的 WrapPanel