//堆栈
Stack<int> stack = new Stack<int>();
//入栈
stack.Push(1);
stack.Push(2);
stack.Push(3);
//出栈
//出栈可以弹出作为返回值,可以接收
int num = stack.Pop();//3
num = stack.Pop();//2
num = stack.Pop();//1
//看一看现在栈顶是谁
num = stack.Peek();
//队列
Queue<int> queue = new Queue<int>();
//入队
queue.Enqueue(1);
queue.Enqueue(2);
queue.Enqueue(3);
//出队
num = queue.Dequeue();//1
num = queue.Dequeue();//2
num = queue.Dequeue();//3
哈希表HashTable
类
描述和用法
Add()
将指定的键和值添加到哈希表中
Clear()
从 Hashtable 中移除所有的元素。
ContainsKey()
判断 Hashtable 是否包含指定的键。
ContainsValue()
判断 Hashtable 是否包含指定的值。
Remove()
从 Hashtable 中移除带有指定的键的元素。
Keys
获取一个ICollection,包含 Hashtable 中的键。
Values
获取一个ICollection,包含Hashtable中的值
//哈希表
Hashtable hashtable = new Hashtable();
//增加键值对
hashtable.Add("xiaowang", new Person(3));
hashtable.Add("xiaoli", new Person(5));
hashtable["xiaozhang"] = new Person(6);//也支持索引器
字典Dictionary
类
描述和用法
Add(TKey, TValue)
将指定的键和值添加到字典中。
Clear()
将所有键和值从 Dictionary<TKey,TValue> 中移除。
ContainsKey(TKey)
确定是否 Dictionary<TKey,TValue> 包含指定键。
ContainsValue(TValue)
确定 Dictionary<TKey,TValue> 是否包含特定值。
Remove(TKey)
将带有指定键的值从 Dictionary<TKey,TValue> 中移除。
TryGetValue(TKey, TValue)
获取与指定的键关联的值。
Keys
获得一个包含 Dictionary<TKey,TValue> 中的键的集合。
Values
获得一个包含 Dictionary<TKey,TValue> 中的值的集合。
//字典
Dictionary<string,Person> dic = new Dictionary<string,Person>();
Person person = new Person(3);
//增加
dic.Add("xiaowang", person);
//包含某个Key
res = dic.ContainsKey("xiaowang");
//包含某个Value
res = dic.ContainsValue(person);
//移除 移除的一对
dic.Remove("xiaowang");
//遍历字典所有的key,无序的
foreach(string str in dic.Keys){
Console.WriteLine(str);
}
//遍历字典所有的Value,无序的
foreach(Person p in dic.Values){
Console.WriteLine(p.ToString());
}