C#提供的List集合有很多用法,而且在实际使用中会经常用到它,而且还比较好用。在使用EF的时候,可能会经常用到集合的操作,因此,了解集合的具体使用方法还是很有必要的。List的一些基本用法还是很简单的,比如集合的声明,添加元素,移除元素,排序等。虽然很简单,但是作为文档的整理,还是写的详细一些比较好,还能当作工具书来用~~~。
List相比ArrayList有两个优点:
(1)List是类型安全的,在大多数时候执行的会更好。
(2)List是不需要考虑装箱和拆箱的问题。
1、常用属性
(1)容量Capacity
(2)长度Count
这两个属性有区别,一个是指元素的个数,一个是指最多能放多少个。而且List是通过翻倍的方式扩容的。具体怎么实现的,有兴趣的可以查看C#源码学习学习。
2、方法
(1)排序Sort和翻转Reverse
(2)添加一个元素Add和将一个集合的元素添加到另一个集合中AddRange
(3)移除Remove和移除指定元素RemoveAt和移除集合中所有元素RemoveAll
稍微高级一些的用法。这里需要了解Predicate委托。
Predicate是什么?(注:以下摘自C#技术文档)
摘要:表示定义一组条件并确定指定对象是否符合这些条件的方法。
public delegate bool Predicate<in T>(T obj)。
参数:obj:要按照由此委托表示的方法中定义的条件进行比较的对象。
类型参数:T:要比较的对象的类型。
返回结果: 如果 obj 符合由此委托表示的方法中定义的条件,则为 true;否则为 false。
(4)Find系列
Find查找匹配的第一个元素。
FindAll查找匹配的所有元素。
FindIndex查找匹配的第一个元素的索引。
(5)TrueForAll方法
用于判断集合中的所有元素是否都符合条件
(6)Take方法
顾名思义,就是从集合里面挑几个出来。
(7)Where条件
根据Where的条件对集合的元素进行筛选。
List常用的一些方法基本都列出来了,下面贴上测试的代码。
以下是测试结果。