泛型--List2011-03-25数组类型的一个典型问题是固定容量。如果您预先不知道数组将容纳多少对象,就会冒着给数组声明太小(溢出)或太大(浪费空间)的空间的风险。您的程序可能让用户输入数据或从Web站点收集数据。当它发现对象(字符串,书,值等等),将把它们添加进数组,但您并不知道在这段时间内会收集多少数据。固定尺寸的数组并不是一个很好的选择,因为您并不知道需要多大的数组。List类是一个根据需要动态增加尺寸的数组。它提供了一组有用的方法和属性用于操作。它们中最重要的显示在表9-3中。表9-3 List的方法和属性
| 方法或属性 | 作用 |
| Capacity | 用于获取或设置List可容纳元素的数量。当数量超过容量时,这个值会自动增长。您可以设置这个值以减少容量,也可以调用trin()方法来减少容量以适合实际的元素数目。 |
| Count | 属性,用于获取数组中当前元素数量 |
| Item( ) | 通过指定索引获取或设置元素。对于List类来说,它是一个索引器。 |
| Add( ) | 在List中添加一个对象的公有方法 |
| AddRange( ) | 公有方法,在List尾部添加实现了ICollection接口的多个元素 |
| BinarySearch( ) | 重载的公有方法,用于在排序的List内使用二分查找来定位指定元素. |
| Clear( ) | 在List内移除所有元素 |
| Contains( ) | 测试一个元素是否在List内 |
| CopyTo( ) | 重载的公有方法,把一个List拷贝到一维数组内 |
| Exists( ) | 测试一个元素是否在List内 |
| Find( ) | 查找并返回List内的出现的第一个匹配元素 |
| FindAll( ) | 查找并返回List内的所有匹配元素 |
| GetEnumerator( ) | 重载的公有方法,返回一个用于迭代List的枚举器 |
| Getrange( ) | 拷贝指定范围的元素到新的List内 |
| IndexOf( ) | 重载的公有方法,查找并返回每一个匹配元素的索引 |
| Insert( ) | 在List内插入一个元素 |
| InsertRange( ) | 在List内插入一组元素 |
| LastIndexOf( ) | 重载的公有方法,,查找并返回最后一个匹配元素的索引 |
| Remove( ) | 移除与指定元素匹配的第一个元素 |
| RemoveAt( ) | 移除指定索引的元素 |
| RemoveRange( ) | 移除指定范围的元素 |
| Reverse( ) | 反转List内元素的顺序 |
| Sort( ) | 对List内的元素进行排序 |
| ToArray( ) | 把List内的元素拷贝到一个新的数组内 |
| trimToSize( ) | 将容量设置为List中元素的实际数目 |