System.Collections、System.Collections.Generic、System.Collections.Specialized

 System.Collections、System.Collections.Generic、System.Collections.Specialized这三个命名空间看上去都差不多,但是放在一起就会发现他们之间的差别。

 

System.Collections 命名空间

System.Collections 命名空间包含接口和类,这些接口和类定义各种对象(如列表、队列、位数组、哈希表和字典)的集合。

 

说明

ArrayList

使用大小可按需动态增加的数组实现 IList 接口。

BitArray

管理位值的压缩数组,该值表示为布尔值,其中 true 表示位是打开的 (1)false 表示位是关闭的 (0)

CaseInsensitiveComparer

比较两个对象是否相等,比较时忽略字符串的大小写。

CaseInsensitiveHashCodeProvider

使用忽略字符串大小写的哈希算法,为对象提供哈希代码。

CollectionBase

为强类型集合提供 abstract 基类。

Comparer

比较两个对象是否相等,其中字符串比较是区分大小写的。

DictionaryBase

为键/值对的强类型集合提供 abstract 基类。

Hashtable

表示键/值对的集合,这些键/值对根据键的哈希代码进行组织。

Queue

表示对象的先进先出集合。

ReadOnlyCollectionBase

为强类型非泛型只读集合提供 abstract 基类。

SortedList

表示键/值对的集合,这些键值对按键排序并可按照键和索引访问。

Stack

表示对象的简单的后进先出非泛型集合。

 接口

 

接口

说明

ICollection

定义所有非泛型集合的大小、枚举数和同步方法。

IComparer

公开一种比较两个对象的方法。

IDictionary

表示键/值对的非通用集合。

IDictionaryEnumerator

枚举非泛型字典的元素。

IEnumerable

公开枚举数,该枚举数支持在非泛型集合上进行简单迭代。

IEnumerator

支持对非泛型集合的简单迭代。

IEqualityComparer

定义方法以支持对象的相等比较。

IHashCodeProvider

使用自定义哈希函数为对象提供哈希代码。

IList

表示可按照索引单独访问的对象的非泛型集合。

结构

 

结构

说明

DictionaryEntry

定义可设置或检索的字典键/值对。

 

System.Collections.Generic 命名空间

注意:此命名空间在 .NET Framework 2.0 版中是新增的。

System.Collections.Generic 命名空间包含定义泛型集合的接口和类,泛型集合允许用户创建强类型集合,它能提供比非泛型强类型集合更好的类型安全性和性能。

 

 

说明

Comparer

IComparer 泛型接口的实现提供基类。

Dictionary

表示键和值的集合。

Dictionary.KeyCollection

表示 Dictionary 中键的集合。无法继承此类。

Dictionary.ValueCollection

表示 Dictionary 中值的集合。无法继承此类。

EqualityComparer

IEqualityComparer 泛型接口的实现提供基类。

KeyNotFoundException

指定用于访问集合中元素的键与集合中的任何键都不匹配时所引发的异常。

LinkedList

表示双向链表。

LinkedListNode

表示 LinkedList 中的节点。无法继承此类。

List

表示可通过索引访问的对象的强类型列表。提供用于对列表进行搜索、排序和操作的方法。

Queue

表示对象的先进先出集合。

SortedDictionary

表示按键排序的键/值对的集合。

SortedDictionary.KeyCollection

表示 SortedDictionary 中键的集合。无法继承此类。

SortedDictionary.ValueCollection

表示 SortedDictionary 中值的集合。无法继承此类

SortedList

表示键/值对的集合,这些键/值对基于关联的 IComparer 实现按照键进行排序。

Stack

表示同一任意类型的实例的大小可变的后进先出 (LIFO) 集合。

接口

 

接口

说明

ICollection

定义操作泛型集合的方法。

IComparer

定义类型为比较两个对象而实现的方法。

IDictionary

表示键/值对的泛型集合。

IEnumerable

公开枚举数,该枚举数支持在指定类型的集合上进行简单迭代。

IEnumerator

支持在泛型集合上进行简单迭代。

IEqualityComparer

定义方法以支持对象的相等比较。

IList

表示可按照索引单独访问的一组对象。

结构

 

结构

说明

Dictionary.Enumerator

枚举 Dictionary 的元素。

Dictionary.KeyCollection.Enumerator

枚举 Dictionary.KeyCollection 的元素。

Dictionary.ValueCollection.Enumerator

枚举 Dictionary.ValueCollection 的元素。

KeyValuePair

定义可设置或检索的键/值对。

LinkedList.Enumerator

枚举 LinkedList 的元素。

List.Enumerator

枚举 List 的元素。

Queue.Enumerator

枚举 Queue 的元素。

SortedDictionary.Enumerator

枚举 SortedDictionary 的元素。

SortedDictionary.KeyCollection.Enumerator

枚举 SortedDictionary.KeyCollection 的元素。

SortedDictionary.ValueCollection.Enumerator

枚举 SortedDictionary.ValueCollection 的元素。

Stack.Enumerator

枚举 Stack 的元素。

 

System.Collections.Specialized 命名空间

System.Collections.Specialized 命名空间包含专用的和强类型的集合,例如,链接的列表词典、位向量以及只包含字符串的集合。

 

 

说明

CollectionsUtil

创建忽略字符串大小写的集合。

HybridDictionary

在集合较小时,使用 ListDictionary 来实现 IDictionary,然后当集合变大时,切换到 Hashtable

ListDictionary

使用单链接列表实现 IDictionary。建议用于通常包含 10 个或 10 个以下项的集合。

NameObjectCollectionBase

为关联的 String 键和 Object 值的集合(可通过键或索引来访问它)提供 abstract 基类。

NameObjectCollectionBase.KeysCollection

表示集合的 String 键的集合。

NameValueCollection

表示可通过键或索引访问的关联 String 键和 String 值的集合。

OrderedDictionary

表示根据键/索引排序的键/值对的集合。

StringCollection

表示字符串集合。

StringDictionary

将键和值强类型化为字符串而不是对象来实现哈希表。

StringEnumerator

支持在 StringCollection 上进行简单迭代。

 接口

 

接口

说明

IOrderedDictionary

表示键/值对的索引集合。

结构

 

结构

说明

BitVector32

提供一个简单结构,该结构以 32 位内存存储布尔值和小整数。

BitVector32.Section

表示可以包含整数的向量的节。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值