特殊集合:
Stack. 先进后出,堆叠没有索引。
1 Stack ss = new Stack(); 2 ss.Push("a");//将堆叠推入Stack中。 3 ss.Push("b");//用Push推入数据。用Pop,弹出数据(弹出最后一个进入的数据)。 4 ss.Push("c");//进只能一个一个进,出也是只能一个一个出。 5 ss.Push("d"); 6 ss.Push("e"); 7 foreach (string q in ss)//foreach 根据集合/数组的构造,依次获取数据 8 {//读取二维数组时,先读取[0,0] [0,1] [0,2]...然后读取 [1,0] [1,1] [1,2]... 9 Console.WriteLine(q); 10 } 11 Console.WriteLine("元素个数:" + ss.Count);//.Counts 获取元素个数。 12 //string tan = ss.Pop().ToString(); //弹出数据。 13 Console.WriteLine("弹出的数据" + ss.Pop()); 14 Console.WriteLine("弹出后的元素个数:" + ss.Count);//.Counts 获取元素个数。 15 string kan = ss.Peek().ToString();//Peek 查看Stack中的一个数据, 16 Console.WriteLine(kan); 17 Console.WriteLine("查看后的元素个数:" + ss.Count);//.Counts 获取元素个数。 18 Console.ReadLine();
特殊集合 ,Queue。队列集合,没有索引,只能先进先出,
1 Queue qu=new Queue(); 2 qu.Enqueue(1); 3 qu.Enqueue(2); 4 qu.Enqueue(3); 5 qu.Enqueue(4); 6 qu.Enqueue(5); 7 foreach (int i in qu) 8 { 9 Console.WriteLine(i); 10 } 11 bool b = qu.Contains(3);//查看集合中是否有某个元素。返回bool值 12 Console.WriteLine(b); 13 Console.WriteLine("元素个数"+qu.Count); 14 int chu = int.Parse(qu.Dequeue().ToString()); 15 Console.WriteLine("出队的数据"+chu); 16 Console.WriteLine("出队后的元素个数"+qu.Count); 17 int kan = int.Parse(qu.Peek().ToString()); 18 Console.WriteLine("查看的数据" + kan); 19 Console.WriteLine("查看后的元素个数"+qu.Count); 20 Console.ReadLine();
Hashtable
哈希表 集合,一个位置包含两个值,一个Keys,一个Values。也是先进后出
keys 代表的是一个键值的集合,Values代表的是value的一个集合
索引是我们自己定义的。用foreach读取时需要将Keys和Values分开读取
1 //哈希表 集合,一个位置包含两个值,一个Keys,一个Values。也是先进后出 2 //keys 代表的是一个键值的集合,Values代表的是value的一个集合 3 //索引是我们自己定义的。用foreach读取时需要将Keys和Values分开读取 4 Hashtable ht = new Hashtable(); 5 ht.Add(0,"壹"); 6 ht.Add(1, "贰"); 7 ht.Add(2, "叁"); 8 ht.Add(3, "肆"); 9 ht.Add(4, "伍"); 10 ht.Add(5, "陆"); 11 //ht.Add(5, "柒"); 键值不能重复。 12 //ht.Clear 清除集合 13 Console.WriteLine("移除前元素个数" + ht.Count);//元素个数。 14 ht.Remove(4);//按照括号内的key值移除,移除数据和键值。 15 Console.WriteLine("是否包含某个值"+ht.Contains(4));//判断是否包含某个键值 16 Console.WriteLine("移除后元素个数"+ht.Count);//元素个数。 17 foreach (int i in ht.Keys) 18 { 19 Console.WriteLine(i); 20 } 21 foreach (string s in ht.Values) 22 { 23 Console.WriteLine(s); 24 } 25 Console.ReadLine();
写入集合。键值,values 分别写入
枚举 Get