C#泛型集合之——列表

Posted fangexuxiehuihuang

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C#泛型集合之——列表相关的知识,希望对你有一定的参考价值。

列表基础

 

  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(委托函数或拉姆达表达式);

 

以上是关于C#泛型集合之——列表的主要内容,如果未能解决你的问题,请参考以下文章

C#泛型集合之——链表

C#高级语法之泛型泛型约束,类型安全逆变和协变(思想原理)

C#泛型集合之——队列与堆栈

C#中ArrayList和泛型集合List方法概述概述

C#语言基础——集合(ArrayList集合)

C#中的泛型和泛型集合