C# 有哪些集合

队列【Queue】

//队列:先进先出
/*
 *增加元素到队列结尾处
 *移除队列开始处
 */
Queue queue=new Queue();
queue.Enqueue(Object);
queue.Dequeue();

堆栈【stack】

//堆栈:先进后出
/*增加元素到堆栈顶部
 *移除堆栈顶部元素
 */
Stack stack=new Stack();
stack.Push(Object);
stack.Pop();//获取并移除顶部对象
stack.Peek();//获取不移除顶部对象

键值对:Dictionary,HashTable(Dic 自定义类型,HashTable 装Object),Hashmap(java键值对集合)。

【Dictionary】

Dictionary<int,int> dictionary=new Dictionary<int,int>();

【HashTable】

HashTable hashtable=new HashTable();
hashtable.Add(Object,Object);

集合与数组:Array,ArrayList,Collection,List,HashSet,SortSet,SortedList,SortedDictionary,LinkedList

【Array】 固定大小数组   new Array[2];

【ArrayList】 可变大小数组  new ArrayList();

【Collection】集合(实体) new Collection<T>();

【List】泛型集合,拥有很多扩展方法  new List<T>();

【HashSet】非重复集合  new HashSet<T>();

【SortSet】有顺序集合   new SortSet<T>();

【SortedList】有序键值对集合:插入删除慢,内存小,适用已排序的键值对集合转换  new SortedList<key,value>();

【SortedDictionary】有序键值对集合:插入删除快,内存大,使用对键值对频繁操作  new SortedDictionary<key,value>();

【LinkedList】双向链表  new LinkedList<T>();

posted @   木狼  阅读(1773)  评论(0编辑  收藏  举报
编辑推荐:
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
点击右上角即可分享
微信分享提示