C# List

C# List

  • [创建 `List`:](#创建 List:)
  • 添加元素:
  • [使用 `AddRange` 方法添加多个元素:](#使用 AddRange 方法添加多个元素:)
  • 插入元素:
  • 访问元素:
  • 移除元素:
    • [使用 `Remove` 方法移除一个元素:](#使用 Remove 方法移除一个元素:)
    • [使用 `RemoveAt` 方法移除指定索引的元素:](#使用 RemoveAt 方法移除指定索引的元素:)
    • [使用 `RemoveAll` 方法移除满足条件的所有元素:](#使用 RemoveAll 方法移除满足条件的所有元素:)
  • 查找元素:
    • [使用 `Contains` 方法检查元素是否存在:](#使用 Contains 方法检查元素是否存在:)
    • [使用 `IndexOf` 方法获取元素的索引:](#使用 IndexOf 方法获取元素的索引:)
    • 获取子列表:
  • 排序:
    • [使用 `Sort` 方法对整个列表进行排序:](#使用 Sort 方法对整个列表进行排序:)
    • [使用 `Sort` 方法和一个比较器对列表进行自定义排序:](#使用 Sort 方法和一个比较器对列表进行自定义排序:)
  • 反转列表:
  • 清空列表:
  • 获取列表长度:
  • 遍历列表:

C# 中的 List<T> 是一个泛型集合,用于存储对象的有序集合,并且可以包含重复的元素。 List<T>System.Collections.Generic 命名空间下的一个类,它提供了丰富的方法和属性来操作集合中的数据。

以下是一些常用的 List<T> 操作:

创建 List:

csharp 复制代码
List<int> numbers = new List<int>();

添加元素:

使用 Add 方法添加单个元素:

csharp 复制代码
numbers.Add(5);

使用 AddRange 方法添加多个元素:

csharp 复制代码
List<int> moreNumbers = new List<int> { 6, 7, 8 };
numbers.AddRange(moreNumbers);

插入元素:

csharp 复制代码
numbers.Insert(0, 0); // 在索引0的位置插入元素0

访问元素:

csharp 复制代码
int firstElement = numbers[0]; // 获取第一个元素

移除元素:

使用 Remove 方法移除一个元素:

csharp 复制代码
numbers.Remove(5); // 移除元素5

使用 RemoveAt 方法移除指定索引的元素:

csharp 复制代码
numbers.RemoveAt(0); // 移除索引0处的元素

使用 RemoveAll 方法移除满足条件的所有元素:

csharp 复制代码
numbers.RemoveAll(n => n > 5); // 移除所有大于5的元素

查找元素:

使用 Contains 方法检查元素是否存在:

csharp 复制代码
bool containsSeven = numbers.Contains(7);

使用 IndexOf 方法获取元素的索引:

int index = numbers.IndexOf(7);

获取子列表:

csharp 复制代码
List<int> subList = numbers.GetRange(0, 3); // 获取从索引0开始的3个元素的子列表

排序:

使用 Sort 方法对整个列表进行排序:

csharp 复制代码
numbers.Sort();

使用 Sort 方法和一个比较器对列表进行自定义排序:

csharp 复制代码
numbers.Sort((a, b) => a.CompareTo(b));

反转列表:

csharp 复制代码
numbers.Reverse();

清空列表:

csharp 复制代码
numbers.Clear();

获取列表长度:

csharp 复制代码
int count = numbers.Count;

遍历列表:

csharp 复制代码
foreach (int number in numbers)
{
    Console.WriteLine(number);
}

这些是 List<T> 的一些基本操作,通过这些操作,你可以有效地管理你的数据集合。记得在使用 List<T> 时,要包含 using System.Collections.Generic; 命名空间。

相关推荐
留不住丨晚霞6 分钟前
说说SpringBoot常用的注解?
java·开发语言
hardStudy_h16 分钟前
C++——内联函数与Lambda表达式
开发语言·jvm·c++
艾莉丝努力练剑43 分钟前
【C语言】学习过程教训与经验杂谈:思想准备、知识回顾(三)
c语言·开发语言·数据结构·学习·算法
witton2 小时前
Go语言网络游戏服务器模块化编程
服务器·开发语言·游戏·golang·origin·模块化·耦合
枯萎穿心攻击3 小时前
ECS由浅入深第三节:进阶?System 的行为与复杂交互模式
开发语言·unity·c#·游戏引擎
Jerry Lau3 小时前
go go go 出发咯 - go web开发入门系列(一) helloworld
开发语言·前端·golang
nananaij3 小时前
【Python基础入门 re模块实现正则表达式操作】
开发语言·python·正则表达式
Micro麦可乐3 小时前
Java常用加密算法详解与实战代码 - 附可直接运行的测试示例
java·开发语言·加密算法·aes加解密·rsa加解密·hash算法
天下一般3 小时前
go入门 - day1 - 环境搭建
开发语言·后端·golang
雷羿 LexChien3 小时前
C++内存泄漏排查
开发语言·c++