如果我有一个采用某种类型集合的
函数,我应该使用哪种参数类型?
我以前假设IEnumerable是默认值,但我想知道这是否正确,如果是,为什么.
ICollection似乎也是一个有效的候选者(由于它的名字),但我得到的印象IEnumerables更加
用户友好.
我想看看框架给我们的例子是个好主意,但我发现像String.Join这样的东西要求一个字符串数组.
你选择对客户施加最少的那个,但允许你完成你的工作.如果你能逃脱IEnumerable< T>在ICollection< T>上,您应该使用它,因为这为您的API的客户提供了更大的灵活性.