C#泛型类和集合类的方法

简介:

FCL中集合&泛型类

列表:

ArrayList 使用大小可按需动态增加的数组实现 IList 接口。 
BitArray 管理位值的压缩数组,该值表示为布尔值,其中 true 表示位是打开的 (1),false 表示位是关闭的 (0)。 
Stack 表示对象的简单的后进先出非泛型集合。
Queue 表示对象的先进先出集合。 
Queue<T> 表示对象的先进先出集合。 
Stack<T> 表示同一任意类型的实例的大小可变的后进先出 (LIFO) 集合。 
Dictionary<T> 表示键和值的集合。 
LinkedList<T> 表示双向链表。 
List<T> 表示可通过索引访问的对象的强类型列表。提供用于对列表进行搜索、排序和操作的方法。

字典类:
Hashtable 表示键/值对的集合,这些键/值对根据键的哈希代码进行组织。 
SortedList 表示键/值对的集合,这些键值对按键排序并可按照键和索引访问。 
SortedDictionary<T,U> 表示按键排序的键/值对的集合。 
SortedList<T,U> 表示键/值对的集合,这些键/值对基于关联的 IComparer 实现按照键进行排序。

一、ArrayList & List

ArrayList

Adapter 为特定的 IList 创建 ArrayList 包装。 
Add 将对象添加到 ArrayList 的结尾处。 
AddRange 将 ICollection 的元素添加到 ArrayList 的末尾。 
BinarySearch 已重载。 使用对分检索算法在已排序的 ArrayList 或它的一部分中查找特定元素。 
Clear 从 ArrayList 中移除所有元素。 
Clone 创建 ArrayList 的浅表副本。 
Contains 确定某元素是否在 ArrayList 中。 
CopyTo 已重载。 将 ArrayList 或它的一部分复制到一维数组中。 
Equals 确定指定的 Object 是否等于当前的 Object。 (继承自 Object。) 
IndexOf 已重载。 返回 ArrayList 或它的一部分中某个值的第一个匹配项的从零开始的索引。 
Insert 将元素插入 ArrayList 的指定索引处。 
LastIndexOf 已重载。 返回 ArrayList 或它的一部分中某个值的最后一个匹配项的从零开始的索引。 
Remove 从 ArrayList 中移除特定对象的第一个匹配项。 
RemoveAt 移除 ArrayList 的指定索引处的元素。 
Repeat 返回 ArrayList,它的元素是指定值的副本。 
Reverse 已重载。 将 ArrayList 或它的一部分中元素的顺序反转。 
Sort 已重载。 对 ArrayList 或它的一部分中的元素进行排序。 
ToArray 已重载。 将 ArrayList 的元素复制到新数组中。

LIST

Add 将对象添加到 List<(Of <(T>)>) 的结尾处。 
AddRange 将指定集合的元素添加到 List<(Of <(T>)>) 的末尾。 
BinarySearch 已重载。 使用对分检索算法在已排序的 List<(Of <(T>)>) 或它的一部分中查找特定元素。 
Clear 从 List<(Of <(T>)>) 中移除所有元素。 
Contains 确定某元素是否在 List<(Of <(T>)>) 中。 
ConvertAll<(Of <(TOutput>)>) 将当前 List<(Of <(T>)>) 中的元素转换为另一种类型,并返回包含转换后的元素的列表。 
CopyTo 已重载。 将 List<(Of <(T>)>) 或它的一部分复制到一个数组中。 
Equals 确定指定的 Object 是否等于当前的 Object。 (继承自 Object。) 
Find 搜索与指定谓词所定义的条件相匹配的元素,并返回整个 List<(Of <(T>)>) 中的第一个匹配元素。 
FindAll 检索与指定谓词定义的条件匹配的所有元素。 
FindIndex 已重载。 搜索与指定谓词所定义的条件相匹配的元素,返回 List<(Of <(T>)>) 或它的一部分中第一个匹配项的从零开始的索引。 
FindLast 搜索与指定谓词所定义的条件相匹配的元素,并返回整个 List<(Of <(T>)>) 中的最后一个匹配元素。 
FindLastIndex 已重载。 搜索与指定谓词所定义的条件相匹配的元素,返回 List<(Of <(T>)>) 或它的一部分中最后一个匹配项的从零开始的索引。 
ForEach 对 List<(Of <(T>)>) 的每个元素执行指定操作。 
GetType 获取当前实例的 Type。 (继承自 Object。) 
IndexOf 已重载。 返回 List<(Of <(T>)>) 或它的一部分中某个值的第一个匹配项的从零开始的索引。 
Insert 将元素插入 List<(Of <(T>)>) 的指定索引处。 
InsertRange 将集合中的某个元素插入 List<(Of <(T>)>) 的指定索引处。 
LastIndexOf 已重载。 返回 List<(Of <(T>)>) 或它的一部分中某个值的最后一个匹配项的从零开始的索引。 
Remove 从 List<(Of <(T>)>) 中移除特定对象的第一个匹配项。 
RemoveAll 移除与指定的谓词所定义的条件相匹配的所有元素。 
RemoveAt 移除 List<(Of <(T>)>) 的指定索引处的元素。 
Reverse 已重载。 将 List<(Of <(T>)>) 或它的一部分中元素的顺序反转。 
Sort 已重载。 对 List<(Of <(T>)>) 或它的一部分中的元素进行排序。 
ToArray 将 List<(Of <(T>)>) 的元素复制到新数组中。 
 

二、Hashtable & Dictionary

Hashtable

Add 将带有指定键和值的元素添加到 Hashtable 中。 
Clear 从 Hashtable 中移除所有元素。 
Clone 创建 Hashtable 的浅表副本。 
Contains 确定 Hashtable 是否包含特定键。 
ContainsKey 确定 Hashtable 是否包含特定键。 
ContainsValue 确定 Hashtable 是否包含特定值。 
CopyTo 将 Hashtable 元素复制到一维 Array 实例中的指定索引位置。 
Equals 确定指定的 Object 是否等于当前的 Object。 (继承自 Object。) 
GetHash 返回指定键的哈希代码。 
GetHashCode 用作特定类型的哈希函数。 (继承自 Object。) 
Remove 从 Hashtable 中移除带有指定键的元素。 
ToString 返回表示当前 Object 的 String。 (继承自 Object。)

Dictionary

Add 将指定的键和值添加到字典中。 
Clear 从 Dictionary<(Of <(TKey, TValue>)>) 中移除所有的键和值。 
ContainsKey 确定 Dictionary<(Of <(TKey, TValue>)>) 是否包含指定的键。 
ContainsValue 确定 Dictionary<(Of <(TKey, TValue>)>) 是否包含特定值。 
Equals 确定指定的 Object 是否等于当前的 Object。 (继承自 Object。) 
GetHashCode 用作特定类型的哈希函数。 (继承自 Object。) 
Remove 从 Dictionary<(Of <(TKey, TValue>)>) 中移除所指定的键的值。



本文转自linzheng 51CTO博客,原文链接:http://blog.51cto.com/linzheng/1081560

相关文章
|
25天前
|
Java 测试技术 C#
浅谈 C# 13 中的 params 集合
浅谈 C# 13 中的 params 集合
|
5月前
|
Java 物联网 C#
C#/.NET/.NET Core学习路线集合,学习不迷路!
C#/.NET/.NET Core学习路线集合,学习不迷路!
268 0
|
4月前
|
开发框架 .NET Java
C#集合数据去重的5种方式及其性能对比测试分析
C#集合数据去重的5种方式及其性能对比测试分析
54 11
|
4月前
|
开发框架 .NET Java
C#集合数据去重的5种方式及其性能对比测试分析
C#集合数据去重的5种方式及其性能对比测试分析
73 10
|
5月前
|
JSON 程序员 C#
使用 C# 比较两个对象是否相等的7个方法总结
比较对象是编程中的一项基本技能,在实际业务中经常碰到,比如在ERP系统中,企业的信息非常重要,每一次更新,都需要比较记录更新前后企业的信息,直接比较通常只能告诉我们它们是否指向同一个内存地址,那我们应该怎么办呢?分享 7 个方法给你!
119 2
|
5月前
|
C# UED SEO
C# 异步方法async / await任务超时处理
通过使用 `Task.WhenAny`和 `Task.Delay`方法,您可以在C#中有效地实现异步任务的超时处理机制。这种方法允许您在指定时间内等待任务完成,并在任务超时时采取适当的措施,如抛出异常或执行备用操作。希望本文提供的详细解释和代码示例能帮助您在实际项目中更好地处理异步任务超时问题,提升应用程序的可靠性和用户体验。
213 3
|
6月前
|
开发框架 NoSQL MongoDB
C#/.NET/.NET Core开发实战教程集合
C#/.NET/.NET Core开发实战教程集合
128 1
|
6月前
|
存储 C#
【C#】大批量判断文件是否存在的两种方法效率对比
【C#】大批量判断文件是否存在的两种方法效率对比
115 1
|
5月前
|
C# 开发者
C# 一分钟浅谈:Code Contracts 与契约编程
【10月更文挑战第26天】本文介绍了 C# 中的 Code Contracts,这是一个强大的工具,用于通过契约编程增强代码的健壮性和可维护性。文章从基本概念入手,详细讲解了前置条件、后置条件和对象不变量的使用方法,并通过具体代码示例进行了说明。同时,文章还探讨了常见的问题和易错点,如忘记启用静态检查、过度依赖契约和性能影响,并提供了相应的解决建议。希望读者能通过本文更好地理解和应用 Code Contracts。
90 3
|
4月前
|
存储 安全 编译器
学懂C#编程:属性(Property)的概念定义及使用详解
通过深入理解和使用C#的属性,可以编写更清晰、简洁和高效的代码,为开发高质量的应用程序奠定基础。
165 12