特殊集合
1.Stract
栈:先进后出,一个个取值,一个个赋值
属性及方法:
.count
.push() 推入元素
.pop() 弹出元素
.clear()
例:
Stack s = new Stack();
s.Push("5");
s.Push("4");
s.Push("3");
s.Push("2");
s.Push("1");
foreach (string item in s)
{
Console.WriteLine(item);
}
int n = s.Count;
for (int i = 0; i < n; i++)
{
string yc = s.Pop().ToString();
Console.WriteLine(yc);
}
Console.WriteLine();
string p = s.Pop().ToString();//获得最后进入的数据,移除
string q = s.Peek().ToString();//获得最后进入的数据,但不移除
foreach (string item in s)
{
Console.WriteLine(item);
}
Console.WriteLine("有" + s.Count + "个元素");
Console.WriteLine("弹出元素为" + p);
Console.WriteLine();
Stack c = (Stack)s.Clone();
foreach (string item in c)
{
Console.WriteLine(item);
2.Queue
队列:先进先出,一个个取值,一个个赋值
属性及方法:
.count
.Enqueue() 进队列集合
.Dequeue() 出队列集合
.clear()
例:
Queue que = new Queue();
que.Enqueue("a");
que.Enqueue("b");
que.Enqueue("c");
que.Enqueue("d");
que.Enqueue("e");
foreach (string item in que)
{
Console.WriteLine(item);
}
Console.WriteLine("有" + que.Count + "个元素");
bool b = que.Contains("f");
Console.WriteLine(b);
3.哈希表
先进先出,一个一个赋值,但只能一起取值
属性及方法
.Add(,) 添加key和元素
.Remove() 移除括号内的元素
.Contains() 集合中是否有括号内的元素
.Count
例: Hashtable h = new Hashtable();
h.Add(0, "周一");
h.Add(1, "周二");
h.Add(2, "周三");
h.Add(3, "周四");
h.Add(4, "周五");
h.Add(5, "周六");
h.Add(6, "周日");
foreach (int i in h.Keys)
{
Console.WriteLine(i);
}
h.Remove(4);
foreach (string hh in h.Values)
{
Console.WriteLine(hh);
}
浙公网安备 33010602011771号