C#——集合List

list

list集合和Arraylist基本一样,只不过list是C#2.0版本新加入的范型类型。list也可以通过索引操作里面的元素,也有对list进行增删改查

概念

Array静态数组 * Arraylist 动态数组 * list集合 *

  1. Array是容量是固定的,但是ArrayList和list容量可以根据需要自动扩充,修改 删除,插入等操作。

  2. Array可以是多个维度,但是Arraylist和list只具有一个维度 *

  3. 在大多数情况下list类型执行的更好并且比Arraylist更安全,不用向Arraylist进行拆箱制作(就是类型转换操作)

声明

  1. var list = new List<int>(); // 定义整形的集合

  2. var list2 = new List<int>() { 2,3};

属性

1.添加元素

list.Add(1);

2.查询元素

// 通过索引值查询

Console.WriteLine(list[2]);

3.删除元素

// list.Remove(1); // 通过元素删除

// list.RemoveAt(2); //通过索引删除元素

// list.RemoveRange(0, 1);// 参数1: 索引值(开始删除的位置) 参数2: 删除的个数

// it 代表集合所有的元素,遍历的一个作用//

contains()// 删除满足条件所有的元素,把list2 包含list的元素删除掉

list.RemoveAll(it =>list2.Contains(it)); // 参数是一个函数,函数把满足匹配条件的元素全部删除

4.插入元素

list.Insert(0,5);

5.修改元素

list[0] = 6;

6.清空数组

list.Clear();

7.排序

list.Sort();

8.indexOf() 获取元素的索引值,不存在为-1

Console.WriteLine(list.IndexOf(200));

for循环遍历

for (int i = 0; i < list.Count; i++)

{

Console.Write(list[i]+", ");

}

相关推荐
C++ 老炮儿的技术栈1 小时前
UDP 与 TCP 的区别是什么?
开发语言·c++·windows·算法·visual studio
wgslucky1 小时前
Dubbo报错:module java.base does not “opens java.lang“ to unnamed module
java·开发语言·dubbo
whyeekkk1 小时前
python打卡第48天
开发语言·python
DougLiang2 小时前
关于easyexcel动态下拉选问题处理
java·开发语言
全职计算机毕业设计3 小时前
基于Java Web的校园失物招领平台设计与实现
java·开发语言·前端
5:003 小时前
云备份项目
linux·开发语言·c++
笨笨马甲4 小时前
Qt Quick模块功能及架构
开发语言·qt
夜晚回家4 小时前
「Java基本语法」代码格式与注释规范
java·开发语言
YYDS3144 小时前
C++动态规划-01背包
开发语言·c++·动态规划
安木夕4 小时前
C#-Visual Studio宇宙第一IDE使用实践
前端·c#·.net