一尘不染

IEnumerable和Array,IList和List有什么区别?

c#

IEnumerable和之间有什么区别Array

IList和之间有什么区别List

这些似乎具有相同的功能。


阅读 350

收藏
2020-05-19

共1个答案

一尘不染

IEnumerable仅提供最少的“可迭代”功能。您可以遍历该序列,仅此而已。这有缺点-例如,使用IEnumerable计数元素或获取第n个元素效率很低-
但它也有优点-例如,IEnumerable可以是无穷的序列,例如质数序列。

数组是一个固定大小的集合,具有随机访问权限(即,您可以对其进行索引)。

List是一个具有随机访问权限的可变大小的集合(即,您可以添加和删除元素)。

IList是一个接口,用于从各种具体类(例如List,BindingList,ObservableCollection等)中抽象出列表功能(计数,添加,删除,索引器访问)。

2020-05-19