我们将这样的实例称为“集合”吗?一个“可数”?或者是其他东西?我问我的两个主要目标是:
IEnumerable
。答案 0 :(得分:14)
从技术上讲,我会告知开发人员它实现了IEnumerable。
说出其他任何信息都不太有用。
任何了解IEnumerable的人都会立即了解您班级的能力。任何不这样做的人,无论你怎么说都不会得到它。
答案 1 :(得分:6)
“可枚举”?
这是一个被广泛接受的答案;我建议不要将其称为集合,因为这可能意味着该对象实现了ICollection
或ICollection<T>
。
答案 2 :(得分:2)
没有,所以我会使用短语“一个可枚举的类型”。
集合包含有限数量的项目。可枚举类型不一定是集合,因为它可以是无限列表。
列表是具有明确订单的集合。
答案 3 :(得分:2)
虽然大多数实现IEnumerable
的类都是集合,但没有特定的术语。一个值得注意的例外是String
,但它可以看作是一组字符......
答案 4 :(得分:2)
我通常会说“我有这个IEnumerable ......”,这似乎足够在工作和SO。它清楚地表明我正在谈论一个实现IEnumerable的类。
答案 5 :(得分:2)
我同意那些暗示“枚举器可枚举”的内容,但是如果你想要别的东西,“序列”一词也会有效。
答案 6 :(得分:1)
通过“IEnumerable”调用它将是完全合适的。这使得该类非常明显地实现了IEnumerable,并且简洁而精确。
从面向对象的角度来看,这个类是IS-AN IEnumerable,所以这也是合理的。
答案 7 :(得分:1)
ObservableCollection类将其称为“集合”。
//
// Summary:
// Initializes a new instance of the System.Collections.ObjectModel.ObservableCollection<T>
// class that contains elements copied from the specified collection.
//
// Parameters:
// collection:
// The collection from which the elements are copied.
//
// Exceptions:
// System.ArgumentNullException:
// The collection parameter cannot be null.
public ObservableCollection(IEnumerable<T> collection);
答案 8 :(得分:1)
我建议“一个枚举”。
这在技术上意味着枚举的结果,但通常是如何感知IEnumerable接口。
史蒂夫
答案 9 :(得分:0)
难点在于IEnumerable和“enumerable”这个词不是名词。您说"something is enumerable"
,而不是"something is an enumerable"
。换句话说,可枚举的对象是您对对象所做的事情,而不是对象本身的定义。
MSDN将其描述为:
IEnumerable - 公开枚举器,它支持对指定类型的集合进行简单迭代。
准确记录时我会使用:
“List&lt; int&gt;是System.Int32值的可枚举集合。”