本帖最后由 小狸 于 2014-5-4 16:54 编辑
关于ArrayList,它可以动态地添加和删除元素。可以将ArrayList看作是扩充了数组的功能,但它又不等同于数组。
1)数组的容量是固定的,而ArrayList的容量可以根据需要自动扩充。
2)ArrayList提供添加、删除和插入某一范围元素的方法,但在数组中,只能一次获取或设置一个元素的值。
3)ArrayList提供将只读和固定大小包装返回到集合的方法,而数组不提供。
4)ArrayList只能是一维形势,而数组是可以多维的。
举几个小例子
1.添加(Add,Insert)
- namespace _ArrayList
- {
- class Program
- {
- static void Main(string[] args)
- {
- int[] arr = new int[] { 1, 2, 3, 4, 5 };
- ArrayList list = new ArrayList(arr);
- list.Add(6);
- list.Insert(3, 6);
- foreach (int a in list)
- {
- Console.WriteLine(a); //结果为1,2,3,6,4,5,6;
- }
- Console.ReadLine();
- }
- }
- }
复制代码
2.删除(Clear,Remove,RemoveAt)
- namespace _ArrayList
- {
- class Program
- {
- static void Main(string[] args)
- {
- int[] arr = new int[] { 1, 2, 3, 4, 5 };
- ArrayList list = new ArrayList(arr);
- int[] brr = new int[] { 1, 2, 3, 4, 5 };
- ArrayList list1 = new ArrayList(brr);
- list1.Clear(); //移除了所有元素;
- Console.WriteLine("Clear");
- foreach (int a in list1)
- {
- Console.WriteLine(a);
- }
- list.Remove(2);
- Console.WriteLine("Remove");
- foreach (int a in list)
- {
- Console.WriteLine(a);
- }
- list.RemoveAt(3);
- Console.WriteLine("RemoveAt");
- foreach (int a in list)
- {
- Console.WriteLine(a);
- }
- Console.ReadLine();
- }
- }
- }
复制代码
3.ArrayList的查找
- int[] crr = new int[] { 1, 2, 3, 4, 5 };
- ArrayList listc = new ArrayList(crr);
- Console.WriteLine(listc.Contains(2)); //结果为ture
复制代码 |