列表基础
1.列表概述:列表与哈希集合不同之处在于,它的元素可以重复。(更接近逻辑上的数组,而哈希集合更接近于数学上的集合)
2.创建及初始化:
(1)List<类型> 列表名 =new
List<类型>();
(2)List<类型> 列表名 =new
List<类型>(){值};
(3)List<类型> 列表名 =new
List<类型>(数组名);
3.基础操作:
(1)添加单个元素:列表名.Add(所添加元素);
(2)添加多个元素:列表名.AddRange(所添加元素的数组名);
(3)插入一个元素:列表名.Insert(参数一:插入位置,参数二:所要插入的元素); //插入位置从1开始 //可以用foreach 遍历
(4)插入一组元素:列表名.InsertRang(参数一:插入位置,数组);
(5)删除一个元素:列表名.Remove(元素); //注意若有多个同值元素,仅删除第一个
(6)通过下标删除一个元素:
列表名.RemoveAt(元素下标);
(7)通过下标删除多个元素:列表名.RemoveRange(参数一:从哪开始,参数二:个数)
(8)列表可以用
列表名[下标] 进行调用元素,而哈希集合不能。
(9)判断某个元素是否在列表中:列表名.Contains(元素);
(10)给列表中元素按首字母排序:升:列表名.Sort(); 逆序:列表名.Reverse(); //不是降
(11)清空列表中所有元素:列表名.Clear();
(12)获取列表中元素个数:列表名.Count();
(13)数字类型可进行最大,最小,求和,求平均值等数学运算。
(14)将列表元素复制到一个数组里:列表名.CopyTo(数组名);
(15)将列表元拷贝到一个数组里:数组名=列表名.ToArray();
4.进阶操作:
(1)寻找所有满足条件的列表元素:注意返回值仍是一个列表
List<类型> 新列表名 =旧列表名.FindAll(委托函数(此处返回值为bool));
bool 委托函数名 (列表元素类型 参数)
{形参即代表列表中每一个元素,在此进行条件判断,注意返回值为bool型} //还可以用拉姆达表达式
(2)除所有满足条件的列表元素:返回值仍是一个列表,逻辑上与(1)相反
List<类型> 新列表名 =旧列表名.RmoveAll(委托函数(此处返回值为bool));
(3)从前向后返回第一个符合条件的列表元素:
列表类型 返回元素的变量名 = 列表名.Find(委托函数或拉姆达表达式); //FindLast 与Find
用法相同,只是从后向前找
(4)获得前n行列表元素值:
IEnumetable<类型> 新列表名 =旧列表名.Take(前n个元素); //注意前缀
(5)List.Where 与List.Findall 类似 不同之处在于返回的类型仍为IEnumetable
(6)判断列表中所有元素是否符合条件:返回值为bool型
bool mark =列表名.TrueForAll(委托函数或拉姆达表达式);