为什么IList不支持AddRange
List.AddRange()
存在,但IList.AddRange()
不存在。
这让我觉得很奇怪。 这背后的原因是什么?
因为一个界面应该很容易实现,不包含“除厨房以外的任何东西”。 如果添加AddRange
,则应添加InsertRange
和RemoveRange
(用于对称)。 一个更好的问题是为什么IList<T>
接口没有类似于IEnumerable<T>
接口的扩展方法。 (扩展方法就地Sort
, BinarySearch
…将是有用的)