c# list常用方法
时间: 2025-01-09 18:41:26 浏览: 1
### C# 中 `List<T>` 类的常用方法及其用法示例
`List<T>` 是一种动态数组,在 .NET Framework 中广泛用于存储和操作一组类型的对象。下面列举了一些常用的 `List<T>` 方法并提供了相应的代码示例。
#### 添加元素到列表
可以使用 `Add()` 或者 `AddRange()` 来向集合中追加单个项或多个项。
```csharp
var numbers = new List<int>();
numbers.Add(1); // Add single element
numbers.AddRange(new int[] { 2, 3 }); // Add multiple elements at once
```
#### 移除元素
移除特定索引处的元素可以通过调用 `RemoveAt(int index)` 实现;而要删除指定的对象实例,则应采用 `Remove(T item)` 函数[^1]。
```csharp
// Remove by value
if (numbers.Contains(2))
{
numbers.Remove(2);
}
// Remove by position
if (numbers.Count > 0)
{
numbers.RemoveAt(0);
}
```
#### 查找元素
为了定位某个具体数值的位置,可利用 `IndexOf(T item)` 和 `LastIndexOf(T item)` 这两个成员函数来获取首次出现以及最后一次出现该值的地方。
```csharp
int firstOccurrence = numbers.IndexOf(3);
int lastOccurrence = numbers.LastIndexOf(3);
Console.WriteLine($"First occurrence of 3 is at index: {firstOccurrence}");
Console.WriteLine($"Last occurrence of 3 is at index: {lastOccurrence}");
```
#### 插入新条目
如果希望在序列中间位置插入新的数据点,那么就应当运用 `Insert(Int32, T)` 方法完成此任务。
```csharp
numbers.Insert(1, 99); // Insert number 99 before second element
```
#### 排序功能
对于需要按照一定顺序排列的情况来说,`Sort()` 可以帮助实现升序排序,同时也可以通过传递自定义比较器来进行更复杂的排序逻辑。
```csharp
numbers.Sort();
foreach(var num in numbers){
Console.Write($"{num} ");
}
```
#### 清空整个容器
当不再需要保存任何项目时,可以直接执行 `Clear()` 操作清空当前实例中的全部内容。
```csharp
numbers.Clear();
```
这些只是冰山一角,实际上还有许多其他有用的方法等待探索。值得注意的是,虽然这里展示的例子都基于整数类型 (`int`) 的列表,但是由于这是泛型结构体,因此几乎所有的内置类型乃至用户定义的数据类型都可以作为参数传给 `T` 参数化后的版本。
阅读全文