27 集合和数组之List的使用
在上一篇中,我们对C#中的集合和数组进行了简单的介绍,提到这些数据结构的基本概念和不同之处。今天,我们将深入探讨C#中List<T>
的使用,作为一个强大的集合类型,它提供了动态数组的功能,使得我们能够轻松地管理数据。
什么是List?
List<T>
是属于System.Collections.Generic
命名空间的一种集合类型。它能够存储一个指定类型的对象集合,具有如下特性:
- 动态大小:与数组不同,
List<T>
可以根据需要自动调整其大小。 - 类型安全:由于
List<T>
是泛型集合,它提供了对指定类型对象的安全存储,避免了类型转换错误。
基本使用
要使用List<T>
,首先需要引用其命名空间:
1 | using System.Collections.Generic; |
然后,可以创建一个List<T>
实例,例如,我们创建一个存储int
类型的List
:
1 | List<int> numbers = new List<int>(); |
添加元素
我们可以使用Add
方法向List
中添加元素:
1 | numbers.Add(1); |
此时,numbers
列表的内容为 [1, 2, 3]
。
访问元素
访问List
中的元素可以使用索引,索引从0开始:
1 | int firstNumber = numbers[0]; // 访问第一个元素 |
遍历List
可以使用foreach
循环来遍历List
中的所有元素:
1 | foreach (int number in numbers) |
常用操作
插入元素
使用Insert
方法可以在指定位置插入元素:
1 | numbers.Insert(1, 4); // 在索引1的位置插入元素4 |
numbers
的内容现在变为 [1, 4, 2, 3]
。
删除元素
可以使用Remove
方法删除指定值的第一个匹配项,或使用RemoveAt
方法根据索引删除元素:
1 | numbers.Remove(2); // 删除值为2的元素 |
执行以上操作后,numbers
的内容为 [4, 3]
。
查找元素
使用Contains
方法可以检查List
中是否包含某个值:
1 | bool hasFour = numbers.Contains(4); // 返回true |
示例:简单的学生成绩管理
接下来,我们来一个简单的案例,使用List
来管理学生成绩。
1 | using System; |
在这个示例中,我们创建一个List<double>
来存储学生的成绩,并计算出其平均值。运行此代码将输出学生的平均成绩。
注意事项
- 泛型约束:使用
List<T>
时,确保你熟悉使用的类型;某些操作(如排序)会受到类型限制。 - 性能:
List<T>
的动态扩展可能会导致性能开销,尤其在批量插入时,可以考虑预先定义容量。
小结
今天我们学习了C#中的List<T>
的基本用法,包括如何添加、访问、删除和遍历元素。List<T>
是非常实用的集合类型,尤其适合需要动态大小和易于操作的场景。
在下一篇文章中,我们将进行简单的C#项目之项目需求分析,希望大家继续关注,进一步提升自己的C#编程能力!
27 集合和数组之List的使用