C# 中的 List 和 IList 有什么区别?
csharpserver side programmingprogramming更新于 2025/10/2 10:07:17
C# 中 List 和 IList 的主要区别在于:List 是一个类,表示一个可以通过索引访问的对象列表;而 IList 是一个接口,表示一个可以通过索引访问的对象集合。IList 接口由两个接口实现,分别是 ICollection 和 IEnumerable。
List 和 IList 用于表示一组对象。它们可以存储整数、字符串等对象。List 和 IList 中都有插入、删除元素、搜索和排序元素的方法。List 和 IList 的主要区别在于:List 是一个具体类,而 IList 是一个接口。总而言之,List 是一个实现了 IList 接口的具体类型。
示例 1
using System;
using System.Collections.Generic;
namespace DemoApplication{
class Demo{
static void Main(string[] args){
IList<string> ilist = new IList<string>();
//This will throw error as we cannot create instance for an IList as it is an interface.
ilist.Add("Mark");
ilist.Add("John");
foreach (string list in ilist){
Console.WriteLine(list);
}
}
}
}
示例 2
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

