码迷,mamicode.com
首页 > Windows程序 > 详细

C#泛型集合之——列表

时间:2019-10-03 21:35:47      阅读:117      评论:0      收藏:0      [点我收藏+]

标签:运算   over   拷贝   reverse   find   tab   获取   eal   ddr   

列表基础

 

  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#泛型集合之——列表

标签:运算   over   拷贝   reverse   find   tab   获取   eal   ddr   

原文地址:https://www.cnblogs.com/fangexuxiehuihuang/p/11620840.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!