集合分为两种:非泛型集合,泛型集合。
非泛型集合需要引入:System.Collections命名空间,其命名空间下的类有:
ArrayList表示大小根据需要动态增加的对象数组。
Hashtable表示根据键的哈希代码进行组织的键/值对的集合。
Queue表示对象的先进先出(FIFO)集合。
Stack表示对象的后进先出(LIFO)集合。
Stack stack=new Stack();
Stack<int> stack=new Stack<int>();
泛型集合需要引入:System.Collection.Generic命名空间,其命名空间下的类有:
Dictionary<TKey,TValue>表示根据键进行组织的键/值对的集合。
Dictionary<string,int> dic=new Dictionary<string,int>();
List<T>表示可根据索引访问对象的列表。提供用于对列表进行搜索,排序和修改的方法
Queue<T>表示对象的先进先出集合
SortedList<TKye,TValue>
表示根据键进行排序的键/值对的集合,而键基于的是相关 IComparer<T>实现
Stack<T>表示对象的后进先出集合
我要……
|
泛型集合选项
|
非泛型集合选项
|
线程安全或不可变集合选项
|
将项存储为键/值对以通过键进行快速查找
|
Dictionary<TKey, TValue>
|
Hashtable
(根据键的哈希代码组织的键/值对的集合。)
|
System.Collections.Concurrent.ConcurrentDictionary<TKey, TValue>
System.Collections.ObjectModel.ReadOnlyDictionary<TKey, TValue>
ImmutableDictionary(TKey, TValue) 类
|
按索引访问项
|
List<T>
|
System.Array
System.Collections.ArrayList
|
ImmutableList(T) 类
ImmutableArray 类
|
使用项先进先出 (FIFO)
|
Queue<T>
|
Queue
|
System.Collections.Concurrent.ConcurrentQueue<T>
ImmutableQueue(T) 类
|
使用数据后进先出 (LIFO)
|
Stack<T>
|
Stack
|
System.Collections.Concurrent.ConcurrentStack<T>
ImmutableStack(T) 类
|
按顺序访问项
|
LinkedList<T>
|
无建议
|
无建议
|
删除集合中的项或向集合添加项时接收通知。 (实现 INotifyPropertyChanged 和 System.Collections.Specialized.INotifyCollectionChanged)
|
System.Collections.ObjectModel.ObservableCollection<T>
|
无建议
|
无建议
|
已排序的集合
|
System.Collections.Generic.SortedList<TKey, TValue>
|
System.Collections.SortedList
|
ImmutableSortedDictionary(TKey, TValue) 类
ImmutableSortedSet(T) 类
|
数学函数的一个集
|
System.Collections.Generic.HashSet<T>
System.Collections.Generic.SortedSet<T>
|
无建议
|
ImmutableHashSet(T) 类
ImmutableSortedSet(T) 类
|
|
请发表评论