可能重复:
何时使用 IList 以及何时使用 List
这个问题可能只是对 .NET 框架缺乏了解,但实际上在接口中拥有一组数据而不是仅仅将其放在列表中有什么好处?到目前为止,我只使用List<T>了它,而且它似乎做了我需要它做的事情,但是查看其他人的代码,我发现有人经常使用IEnumerable<T>, IQueryable/ IQueryable<T>, ICollection<T>, 甚至IList<T>. List<T>话虽如此,和之间甚至有什么区别IList<T>?
我知道其中一些在包含的对象上具有不同的功能,但哪个最安全?IEnumerable?