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]+", ");

}

相关推荐
嗯嗯=14 分钟前
python学习篇
开发语言·python·学习
不会c嘎嘎2 小时前
QT中的常用控件 (二)
开发语言·qt
是一个Bug3 小时前
50道核心JVM面试题
java·开发语言·面试
烛阴3 小时前
C# 正则表达式(5):前瞻/后顾(Lookaround)——零宽断言做“条件校验”和“精确提取”
前端·正则表达式·c#
她和夏天一样热3 小时前
【观后感】Java线程池实现原理及其在美团业务中的实践
java·开发语言·jvm
lkbhua莱克瓦243 小时前
进阶-索引3-性能分析
开发语言·数据库·笔记·mysql·索引·性能分析
郑州光合科技余经理3 小时前
技术架构:上门服务APP海外版源码部署
java·大数据·开发语言·前端·架构·uni-app·php
篱笆院的狗4 小时前
Java 中的 DelayQueue 和 ScheduledThreadPool 有什么区别?
java·开发语言
2501_941809144 小时前
面向多活架构与数据地域隔离的互联网系统设计思考与多语言工程实现实践分享记录
java·开发语言·python
qualifying4 小时前
JavaEE——多线程(4)
java·开发语言·java-ee