- 浏览: 237173 次
- 性别:
- 来自: 常州
文章分类
- 全部博客 (165)
- Java基础 (49)
- 开发工具 (3)
- Python基础 (1)
- Oracle基础 (9)
- Java 符号计算 (0)
- 计算机基本原理 (10)
- SQL (6)
- javascript (16)
- HTML (2)
- XML (4)
- 程序员之路 (7)
- JDBC (1)
- Unicode (0)
- 字符编码 (3)
- JSP基础 (2)
- Servlet&JSP (9)
- MySQL基础 (1)
- UML基础 (1)
- Hibernate (2)
- Java包 (1)
- Spring (1)
- Struts2 (9)
- 系统命令 (1)
- Tomcat (1)
- Windows (1)
- Android (1)
- C#基础 (14)
- HTML5 (1)
- .NET基础 (1)
- 数据库基础 (2)
- ASP.NET基础 (7)
- 开源Java (3)
- 趣味算法 (1)
- 面向对象思想 (1)
- 软件应用 (1)
- Web工程 (1)
- jquery (2)
- JPA (0)
- 设计模式 (0)
最新评论
-
静夜独窗:
JavaBean组件能说的具体一点吗,我感觉这样说理解的不清晰 ...
EL 表达式语言 -
静夜独窗:
在Java中,不同字符集编码的转换是通过Unicode作为中介 ...
JavaWeb中的乱码产生与解决方案
.NETFramework的System.Collections命名空间包含若干用于实现集合的接口和类,并提供有效地处理这些紧密相关的数据的各种算法。
一. System.Collections 命名空间
System.Collections命名空间包含具有以下功能的类型:定义各种标准的、专门的、通用的集合对象。命名空间
命名空间 |
说明 |
System.Collections |
System.Collections命名空间包含接口和类,这些接口和类定义各种对象(如列表、队列、位数组、哈希表和字典)的集合。 |
System.Collections.Concurrent |
System.Collections.Concurrent命名空间提供多个线程安全集合类。当有多个线程并发访问集合时,应使用这些类代替System.Collections和System.Collections.Generic命名空间中的对应类型。 |
System.Collections.Generic |
System.Collections.Generic命名空间包含定义泛型集合的接口和类,泛型集合允许用户创建强类型集合,它能提供比非泛型强类型集合更好的类型安全性和性能。 |
System.Collections.ObjectModel |
System.Collections.ObjectModel名称空间包含可在可重用库的对象模型中用作集合的类。在属性或方法返回集合时使用这些类。 |
System.Collections.Specialized |
System.Collections.Specialized命名空间包含专用的和强类型的集合,例如,链接的列表词典、位向量以及只包含字符串的集合。 |
1. System.Collections
System.Collections命名空间包含接口和类,这些接口和类定义各种对象(如列表、队列、位数组、哈希表和字典)的集合。
类型 |
类型名称 |
说明 |
类 |
|
|
|
ArrayList |
使用大小会根据需要动态增加的数组来实现IList接口。数组链表集合。 |
|
BitArray |
管理位值的压缩数组,该值表示为布尔值,其中true表示位是打开的(1),false表示位是关闭的(0)。 |
|
CaseInsensitiveComparer |
比较两个对象是否相等,比较时忽略字符串的大小写。 |
|
CaseInsensitiveHashCodeProvider |
已过时。使用忽略字符串大小写的哈希算法,为对象提供哈希代码。 |
|
CollectionBase |
为强类型集合提供abstract基类。 |
|
Comparer |
比较两个对象是否相等,其中字符串比较是区分大小写的。 |
|
DictionaryBase |
为键/值对的强类型集合提供abstract基类。 |
|
Hashtable |
表示根据键的哈希代码进行组织的键/值对的集合。 |
|
Queue |
表示对象的先进先出集合。 |
|
ReadOnlyCollectionBase |
为强类型非泛型只读集合提供abstract基类。 |
|
SortedList |
表示键/值对的集合,这些键值对按键排序并可按照键和索引访问。 |
|
Stack |
表示对象的简单后进先出(LIFO)非泛型集合。 |
|
StructuralComparisons |
提供用于对两个集合对象执行结构比较的对象。 |
结构 |
|
|
|
DictionaryEntry |
定义可设置或检索的字典键/值对。 |
接口 |
|
|
|
ICollection |
定义所有非泛型集合的大小、枚举数和同步方法。 |
|
IComparer |
公开一种比较两个对象的方法。 |
|
IDictionary |
表示键/值对的非通用集合。 |
|
IDictionaryEnumerator |
枚举非泛型字典的元素。 |
|
IEnumerable |
公开枚举数,该枚举数支持在非泛型集合上进行简单迭代。 |
|
IEnumerator |
支持对非泛型集合的简单迭代。 |
|
IEqualityComparer |
定义方法以支持对象的相等比较。 |
|
IHashCodeProvider |
已过时。使用自定义哈希函数为对象提供哈希代码。 |
|
IList |
表示可按照索引单独访问的对象的非泛型集合。 |
|
IStructuralComparable |
支持集合对象的结构比较。 |
|
IStructuralEquatable |
定义方法以支持对象的结构相等性比较。 |
2. System.Collections.Generic
System.Collections.Generic命名空间包含定义泛型集合的接口和类,泛型集合允许用户创建强类型集合,它能提供比非泛型强类型集合更好的类型安全性和性能。
类型 |
类型名称 |
说明 |
类 |
|
|
|
Comparer<T> |
为IComparer<T>泛型接口的实现提供基类。 |
|
Dictionary<TKey,TValue> |
表示键和值的集合。 |
|
Dictionary<TKey,TValue>.KeyCollection |
表示Dictionary<TKey,TValue>中键的集合。此类不能被继承。 |
|
Dictionary<TKey,TValue>.ValueCollection |
表示Dictionary<TKey,TValue>中值的集合。此类不能被继承。 |
|
EqualityComparer<T> |
为IEqualityComparer<T>泛型接口的实现提供基类。 |
|
HashSet<T> |
表示值的集。 |
|
KeyedByTypeCollection<TItem> |
提供一个集合,该集合的项是用作键的类型。 |
|
KeyNotFoundException |
指定用于访问集合中元素的键与集合中的任何键都不匹配时所引发的异常。 |
|
LinkedList<T> |
表示双向链接列表。 |
|
LinkedListNode<T> |
表示LinkedList<T>中的节点。此类不能被继承。 |
|
List<T> |
表示可通过索引访问的对象的强类型列表。提供用于对列表进行搜索、排序和操作的方法。 |
|
Queue<T> |
表示对象的先进先出集合。 |
|
SortedDictionary<TKey,TValue> |
表示根据键进行排序的键/值对的集合。 |
|
SortedDictionary<TKey,TValue>.KeyCollection |
表示SortedDictionary<TKey,TValue>中键的集合。此类不能被继承。 |
|
SortedDictionary<TKey,TValue>.ValueCollection |
表示SortedDictionary<TKey,TValue>中值的集合。无法继承此类 |
|
SortedList<TKey,TValue> |
表示根据键进行排序的键/值对的集合,而键基于的是相关的IComparer<T>实现。 |
|
SortedSet<T> |
表示按排序顺序保持的对象的集合。 |
|
Stack<T> |
表示相同任意类型的实例的可变大小的后进先出(LIFO)集合。 |
|
SynchronizedCollection<T> |
提供一个线程安全集合,其中包含泛型参数所指定类型的对象作为元素。 |
|
SynchronizedKeyedCollection<K,T> |
提供一个线程安全集合,该集合所含对象的类型由一个泛型参数指定,并且集合根据键进行分组。 |
|
SynchronizedReadOnlyCollection<T> |
提供一个线程安全只读集合,该集合包含泛型参数所指定的类型的对象作为元素。 |
结构 |
|
|
|
Dictionary<TKey,TValue>.Enumerator |
枚举Dictionary<TKey,TValue>的元素。 |
|
Dictionary<TKey,TValue>.KeyCollection.Enumerator |
枚举Dictionary<TKey,TValue>.KeyCollection的元素。 |
|
Dictionary<TKey,TValue>.ValueCollection.Enumerator |
枚举Dictionary<TKey,TValue>.ValueCollection的元素。 |
|
HashSet<T>.Enumerator |
枚举HashSet<T>对象的元素。 |
|
KeyValuePair<TKey,TValue> |
定义可设置或检索的键/值对。 |
|
LinkedList<T>.Enumerator |
枚举LinkedList<T>的元素。 |
|
List<T>.Enumerator |
枚举List<T>的元素。 |
|
Queue<T>.Enumerator |
枚举Queue<T>的元素。 |
|
SortedDictionary<TKey,TValue>.Enumerator |
枚举SortedDictionary<TKey,TValue>的元素。 |
|
SortedDictionary<TKey,TValue>.KeyCollection.Enumerator |
枚举SortedDictionary<TKey,TValue>.KeyCollection的元素。 |
|
SortedDictionary<TKey,TValue>.ValueCollection.Enumerator |
枚举SortedDictionary<TKey,TValue>.ValueCollection的元素。 |
|
SortedSet<T>.Enumerator |
枚举SortedSet<T>对象的元素。 |
|
Stack<T>.Enumerator |
枚举Stack<T>的元素。 |
接口 |
|
|
|
ICollection<T> |
定义操作泛型集合的方法。 |
|
IComparer<T> |
定义类型为比较两个对象而实现的方法。 |
|
IDictionary<TKey,TValue> |
表示键/值对的泛型集合。 |
|
IEnumerable<T> |
公开枚举数,该枚举数支持在指定类型的集合上进行简单迭代。 |
|
IEnumerator<T> |
支持在泛型集合上进行简单迭代。 |
|
IEqualityComparer<T> |
定义方法以支持对象的相等比较。 |
|
IList<T> |
表示可按照索引单独访问的一组对象。 |
|
IReadOnlyCollection<T> |
表示元素的强类型的只读集合。 |
|
IReadOnlyDictionary<TKey,TValue> |
表示键/值对泛型只读集合对。 |
|
IReadOnlyList<T> |
表示可以按索引获取元素的只读集合。 |
|
ISet<T> |
提供用于集的抽象化的基接口。 |
3. System.Collections.Specialized
System.Collections.Specialized命名空间包含专用的和强类型的集合,例如,链接的列表词典、位向量以及只包含字符串的集合。
类型 |
类型名称 |
说明 |
类 |
|
|
|
CollectionChangedEventManager |
提供WeakEventManager实现,以便可以使用“弱事件侦听器”模式附加CollectionChanged事件的侦听器。 |
|
CollectionsUtil |
创建忽略字符串大小写的集合。 |
|
HybridDictionary |
通过以下方法来实现IDictionary:在集合较小时使用ListDictionary,然后在集合变大时切换到Hashtable。 |
|
ListDictionary |
使用单向链接列表实现IDictionary。建议为通常包括少于10个项目的集合。 |
|
NameObjectCollectionBase |
为关联的String键和Object值的集合(可通过键或索引来访问它)提供abstract基类。 |
|
NameObjectCollectionBase.KeysCollection |
表示集合的String键的集合。 |
|
NameValueCollection |
表示可通过键或索引访问的关联String键和String值的集合。 |
|
NotifyCollectionChangedEventArgs |
为CollectionChanged事件提供数据。 |
|
OrderedDictionary |
表示键或索引可访问的键/值对的集合。 |
|
StringCollection |
表示字符串的集合。 |
|
StringDictionary |
使用字符串(而不是对象)强类型的键和值来实现哈希表。 |
|
StringEnumerator |
支持在StringCollection上进行简单迭代。 |
结构 |
|
|
|
BitVector32 |
提供一个简单结构,该结构以32位内存存储布尔值和小整数。 |
|
BitVector32.Section |
表示可以包含整数的向量的节。 |
接口 |
|
|
|
INotifyCollectionChanged |
向侦听器通知动态更改,如在添加或移除项时或在刷新整个列表时。 |
|
IOrderedDictionary |
表示键/值对的索引集合。 |
委托 |
NotifyCollectionChangedEventHandler |
表示处理CollectionChanged事件的方法。 |
枚举 |
NotifyCollectionChangedAction |
描述引起了CollectionChanged事件的操作。 |
4. System.Collections.Concurrent 命名空间
System.Collections.Concurrent命名空间提供多个线程安全集合类。当有多个线程并发访问集合时,应使用这些类代替System.Collections和System.Collections.Generic命名空间中的对应类型。
类型 |
类型名称 |
说明 |
类 |
|
|
|
BlockingCollection<T> |
为实现IProducerConsumerCollection<T>的线程安全集合提供阻塞和限制功能。 |
|
ConcurrentBag<T> |
表示对象的线程安全的无序集合。 |
|
ConcurrentDictionary<TKey,TValue> |
表示可由多个线程同时访问的键值对的线程安全集合。 |
|
ConcurrentQueue<T> |
表示线程安全的先进先出(FIFO)集合。 |
|
ConcurrentStack<T> |
表示线程安全的后进先出(LIFO)集合。 |
|
OrderablePartitioner<TSource> |
表示将一个可排序数据源拆分成多个分区的特定方式。 |
|
Partitioner |
提供针对数组、列表和可枚举项的常见分区策略。 |
|
Partitioner<TSource> |
表示将一个数据源拆分成多个分区的特定方式。 |
接口 |
|
|
|
IProducerConsumerCollection<T> |
定义供制造者/使用者用来操作线程安全集合的方法。此接口提供一个统一的表示(为生产者/消费者集合),从而更高级别抽象如System.Collections.Concurrent.BlockingCollection<T>可以使用集合作为基础的存储机制。 |
枚举 |
|
|
|
EnumerablePartitionerOptions |
即开即用分区程序使用创建设置默认行为。例如,默认情况下,缓冲区的某种形式和多级组块将使用完成IEnumerable<T>实现是快速、非阻塞常见方案的最佳性能。使用此枚举,这些行为可重写。 |
5. System.Collections.ObjectModel 命名空间
System.Collections.ObjectModel名称空间包含可在可重用库的对象模型中用作集合的类。在属性或方法返回集合时使用这些类。
类型 |
类型名称 |
说明 |
类 |
|
|
|
Collection<T> |
提供泛型集合的基类。 |
|
KeyedCollection<TKey,TItem> |
提供集合键嵌入在值中的集合的抽象基类。 |
|
ObservableCollection<T> |
表示一个动态数据集合,在添加项、移除项或刷新整个列表时,此集合将提供通知。 |
|
ReadOnlyCollection<T> |
提供泛型只读集合的基类。 |
|
ReadOnlyDictionary<TKey,TValue> |
表示键/值为只读,泛型集合对。 |
|
ReadOnlyDictionary<TKey,TValue>.KeyCollection |
表示ReadOnlyDictionary<TKey,TValue>对象的关键的只读集合。 |
|
ReadOnlyDictionary<TKey,TValue>.ValueCollection |
表示ReadOnlyDictionary<TKey,TValue>对象值的只读集合。 |
|
ReadOnlyObservableCollection<T> |
表示只读ObservableCollection<T>。 |
发表评论
-
C#学习笔记——文件访问
2012-11-12 23:17 873一.磁盘的基本操作 DriveInfo类提供方法和属性以查询 ... -
C# 学习笔记——数学计算,日期,字符串
2012-11-10 14:24 2351一.数学计算 Math name ... -
Java 与 C# 计算性能比较
2012-11-02 14:51 1154程序:寻找2亿以内的最大素数,从2开始寻找。 Java程序: ... -
ADO.NET
2012-10-28 15:31 1154System.Data包含两个主要命名空间 Syste ... -
C#学习笔记——反射
2012-10-27 15:43 851Type类 BCL声明了一个叫做Type的抽象类,它被设计用 ... -
C#学习笔记——接口
2012-10-27 13:06 897声明接口 接口声明不包含数据成员。 接口声明只能包含如下类 ... -
C#学习笔记——事件
2012-10-18 16:40 1564事件 事件和委托相似 事件的很多方面和委托相似。其实 ... -
C#学习笔记——委托
2012-10-16 16:33 883委托 委托包含具有相 ... -
C#学习笔记——其他
2012-10-15 22:48 869运算符重载 C#运算符被定义为使用预定义类型作为操作数来工作 ... -
C#学习笔记——面向对象——类的继承
2012-10-15 14:31 1173类继承 基类,派生类 public class MyCla ... -
C#学习笔记——面向对象——类的基本概念
2012-10-12 16:06 1389类 class MyClass { } ... -
C#学习笔记——C#关键字
2012-10-12 14:54 803关键字 abstract as ... -
C#学习笔记——面向过程
2012-10-12 12:27 864基本数据类型 类型 别名 ...
相关推荐
8. **集合与数据结构**:C#内置了丰富的集合类,如数组、列表、字典等。理解它们的使用场景和性能特性,对于优化代码至关重要。 9. **.NET框架和Windows API调用**:C#是.NET框架的一部分,学习如何利用.NET提供的...
本学习笔记旨在帮助初学者从零基础开始掌握C#编程,逐步进阶到能够独立设计项目。随书源码为学习提供了实践操作的平台,确保理论与实践相结合。 一、C# 6.0基础语法 1. 变量与数据类型:C#支持多种数据类型,包括...
3. **C#_06.ppt 和 C#_06_01.ppt**:可能涉及到C#中的集合和泛型,比如List、Dictionary, TValue>等数据结构的使用,以及泛型的概念,它们允许我们创建类型安全且可重用的数据结构。 4. **C#_07.ppt**:可能讲解了...
c#学习笔记(1) 51099在线学习网发布 文章来源:网络收集 发布时间:2006-05-25 字体: [大 中 小] 51099在线学习网 http://www.51099.com 1, 结构(struct) 与 类(class) [attributes] [modifiers] struct ...
通过LINQ,开发者可以使用一种直观、简洁的方式来查询各种数据源,包括数据库、XML文档、集合和其他类型的数据结构。本篇笔记将深入探讨LINQ的核心概念、语法以及实际应用。 1. **核心概念** - **查询表达式**:...
C#学习笔记: C#作为.NET框架的一部分,学习内容涵盖基本语法、控制结构、类与对象、泛型、接口、委托和事件。了解Windows Forms和WPF(Windows Presentation Foundation)用于桌面应用开发,以及Unity引擎中的C#...
【.NET 上课笔记资料精华】本篇笔记主要围绕 C# 中的核心概念——面向对象编程展开,涵盖了类的定义、对象的创建与使用、分部类、结构与类以及命名空间等多个方面,旨在帮助初学者深入理解面向对象编程的基础。...
在C# 2008的学习笔记中,会更深入地介绍命名空间的使用,以及两种编程方式——面向对象的API和基于LINQ的查询表达式——来处理XML文档。 通过这个详细的LINQ教程,你将全面掌握如何利用LINQ的强大功能来处理各种...
LINQ旨在简化数据访问和操作,无论数据存储在数据库、XML文件、集合或其他数据结构中。 在"LINQ体验(1)——LINQ简介和LINQ to SQL"中,作者首先介绍了学习LINQ的背景和目的,通过笔记形式记录了学习过程,并打算...