一、只 Remove 第一个符合的项
List<int> list = new List<int> { 1, 2, 2, 3 }; list.Remove(2);
并不会移除两个 2,只会移除第一个,故结果是 1, 2, 3。
二、Remove 不存在的项,不会出错
如上,Remove(7),并不会出错。
三、List 项是引用类型时,按引用比较
List<int> 的项是值类型,而 List<Class1> 的项是引用类型,所以在 Remove 时,是按引用进行的比较。
Class1 c11 = new Class1(); Class1 c12 = c11; List<Class1> list = new List<Class1>(); list.Add(c11); list.Add(c11); list.Remove(c12); Response.Write(list.Count()); // 1
同样,Remove 不存在的对象,也不会出错。
四、Remove null 不会出错