C#中List和IList之间的主要区别在于List是一个类,它表示可以由索引访问的对象的列表,而IList是一个接口,它表示可以由索引访问的对象的集合。IList接口由两个接口实现,它们是ICollection和IEnumerable。
List和IList用于表示一组对象。它们可以存储整数,字符串等对象。有些方法可以插入,删除元素,搜索和排序List或IList的元素。List和IList之间的主要区别在于List是一个具体的类,而IList是一个接口。总体而言,List是实现IList接口的具体类型。
using System; using System.Collections.Generic; namespace DemoApplication{ class Demo{ static void Main(string[] args){ IList<string> ilist = new IList<string>(); //这将引发错误,因为我们不能为IList创建实例,因为它是一个接口。 ilist.Add("Mark"); ilist.Add("John"); foreach (string list in ilist){ Console.WriteLine(list); } } } }
using System; using System.Collections.Generic; namespace DemoApplication{ class Demo{ static void Main(string[] args){ IList<string> ilist = new List<string>(); ilist.Add("Mark"); ilist.Add("John"); List<string> list = new List<string>(); ilist.Add("Mark"); ilist.Add("John"); foreach (string lst in ilist){ Console.WriteLine(lst); } foreach (string lst in list){ Console.WriteLine(lst); } Console.ReadLine(); } } }
输出结果
上面代码的输出是
Mark John Mark John