当前位置: 首页 > news >正文

C# List集合

一、简介

List是一种泛型集合类,用于存储一组相同类型的元素

二、使用

1、创建List

  • 创建List对象时,需要指定集合中元素的类型
List<int> ints = new List<int>();List<string> strings = new List<string>();

2、添加元素

2.1 使用Add()方法添加

List<int> ints = new List<int>();
ints.Add(1);
ints.Add(2);
ints.Add(3);

2.2 使用AddRange()方法添加

List<int> ints = new List<int>();
ints.AddRange(1,2,3);

3、删除元素

3.1 删除指定元素

  • Remove 方法用于删除集合中的指定元素,如果集合中中存在多个相同的元素,只会删除第一个
List<int> ints = new List<int>();
ints.AddRange(1, 2, 3, 1, 2, 3);
ints.Remove(1);
  • RemoveAll 方法用于删除集合中所有匹配到的元素
List<int> ints = new List<int>();
ints.AddRange(1, 2, 3, 1, 2, 3);
ints.RemoveAll(x => x == 1);

3.2 删除指定索引

  • RemoveAt 方法用于删除集合中指定索引位置的元素,索引序号从零开始
//此时会删除列表中索引为2的元素 3
List<int> ints = new List<int>();
ints.AddRange(1, 2, 3, 1, 2, 3);
ints.RemoveAt(2);
  • RemoveRange 方法用于删除集合中从指定索引位置开始,指定长度的元素,索引序号从零开始
//此时会从列表中索引为0的元素开始删除,删除2个元素,即1、2会被删除
List<int> ints = new List<int>();
ints.AddRange(1, 2, 3, 1, 2, 3);
ints.RemoveRange(0, 2);

3.3 清空集合

  • Clear 方法用于清空整个集合
//此时会删除集合中的所有元素
List<int> ints = new List<int>();
ints.AddRange(1, 2, 3, 1, 2, 3);
ints.Clear();

4、遍历集合

4.1 for 循环

  • 依次输出集合中的元素
List<int> ints = new List<int>();
ints.AddRange(1, 2, 3, 1, 2, 3);
for (int i = 0; i < ints.Count; i++)
{Console.WriteLine(ints[i]);
}

4.2 foreach 循环

  • 依次输出集合中的元素
List<int> ints = new List<int>();
ints.AddRange(1, 2, 3, 1, 2, 3);
foreach (int num in ints)
{Console.WriteLine(num);
}

5、常用方法

5.1 Count

//获取集合中元素的个数,此时结果为6
List<int> ints = new List<int>() { 1, 2, 3, 4, 5, 6 };
ints.Count();

5.2 Sort

//对集合中的元素进行排序,默认从小到大
List<int> ints = new List<int>() { 1, 2, 3, 4, 5, 6 };
ints.Sort();

5.3 Reverse

//反转集合中的元素
List<int> ints = new List<int>() { 1, 2, 3, 4, 5, 6 };
ints.Reverse();

5.4 Contains

//判断集合中是否包含某元素
List<int> ints = new List<int>() { 1, 2, 3, 4, 5, 6 };
bool b = ints.Contains(5);

5.5 IndexOf

//获取集合中指定元素的索引,不存在则为-1
List<int> ints = new List<int>() { 1, 2, 3, 4, 5, 6 };
int index = ints.IndexOf(5);
http://www.dtcms.com/a/532124.html

相关文章:

  • F280025的时钟设置
  • PBR太“脏”,手绘太“平”?Substance“风格化PBR”工作流才是版本答案
  • 建设部执业资格注册中心网站logo一键生成器免费版原型图
  • tcpdump 常用命令及参数解析
  • 调用 Google Veo 3.1 API 批量制作电商产品 UGC 视频
  • 网站链接怎么做二维码wordpress支持 nginx
  • 首次使用Gitlab创建项目的详细操作流程
  • 音视频格式转换API接口使用指南
  • 怎么用壳域名做网站wordpress添加形式
  • 网站做视频郑州作网站
  • 【机器学习】Scikit-learn 框架基础
  • [人工智能-大模型-85]:大模型应用层 - AI/AR眼镜:华为智能眼镜、苹果智能眼镜、Google Glass智能眼镜的软硬件技术架构
  • Windows下利用boost库与Windows Api 实现共享内存
  • 绵阳网站建设优化如何做网站的书籍
  • RedisFX Maven 使用教程
  • Python + ADB 手机自动化控制教程
  • MATLAB三维电容仿真与分析
  • Hadoop安全模式详解
  • .NET 任务 Task、Task.Run()、 Task.WhenAll()、Task.WhenAny()
  • 英文营销网站建设南京成旭通网站建设公司怎么样
  • wordpress如何做站群关键词优化易下拉效率
  • 面试官问 Linux 编译调试?gcc 编译流程 + gdb 断点调试 + git 版本控制,连 Makefile 都标好了
  • C语言练习题(二)
  • 【QSS】软件界面的美工操作——Qt 界面优化
  • 网页版html编辑器手机优化大师
  • 【思想比实现更重要】高并发场景下如何保证接口幂等性
  • Spring Expression Language (SpEL) 详解:功能强大的表达式引擎
  • LeetCode:773. 滑动谜题
  • MATLAB基于类别加权灰靶决策的教学评价研究
  • C16可变参数模板函数和普通函数模板