数组列表和数组十分相似,区别在于数组列表的容量是可以动态变化的,而数组的容量是固定的。数组即Array类,数组列表即ArrayList类,两者十分相似。不过,Array类在System命名空间下,ArrayList类在System.Collections命名空间下。数组在初始化时需要指定容量,并且指定之后无法改变,而数组列表可以动态的改变容量。
//初始化ArrayList ArrayList lst = new ArrayList(); //初始化ArrayList并将容量设置为100 ArrayList lst2 = new ArrayList(100); ArrayList lst3 = new ArrayList(); //设置容量为300 lst3.Capacity = 300; int temp = 3; //向ArrayList中添加子项 lst.Add(temp); int temp2 = 4; //向ArrayList中插入子项,第一个参数为插入位置 lst.Insert(1, temp2); int[] arr = new int[] {0,1,2,3}; //向ArrayList中插入集合子项 lst.AddRange(arr); foreach(var obj in lst) { Console.WriteLine(obj); } //移除ArrayList项数为1的子项 lst.RemoveAt(1); Console.WriteLine("移除后:"); foreach (var obj in lst) { Console.WriteLine(obj); }
栈集合和队列集合都是System.Collections命名空间下的集合类型。栈集合类似于仅包括一个入口的容器,最先放进去的内容最后被取出,而最后放进去的内容最先被取出。队列集合则类似于两端分别为入口和出口的容器,最先进去的内容最先被取出,最后进去的内容最后被取出。栈集合和队列集合的其他方法都十分相似。
//stack和queue用法相似,用vs代码提示很清楚2333 Stack stack = new Stack(); //添加子项 stack.Push(1); stack.Push(arr); //返回最外面的子项(对于栈,即使最后添加的子项) object obj2 = stack.Peek(); stack.Pop(); object[] array_obj = stack.ToArray(); Console.WriteLine(obj2); Console.ReadKey();
完
时间: 2024-10-12 08:50:59