一、在使用ArrayList集合的時候,需要創建集合對象
二、ArrayList是一個存儲很多數據的集合
三、集合與數組的區別:
數組:固定長度,類型單一
集合:長度可以不固定,可以是任何類型
四、ArrayList集合的屬性與方法
1.集合的長度 集合名.count
ArrayList list = new ArrayList(); list.Add(1); list.Add(1); list.Add(1); list.Add(1); list.Add(1); //當集合中實際元素元素中的個數超過集合可以容納的個數時, //集合就會向內存多申請一倍的空間,來保證集合中的空間一直可用 Console.WriteLine(list.Count); Console.WriteLine(list.Capacity); Console.ReadKey(); //count 這個集合中實際包含的元素個數 //capcity 這個集合中可以包含的元素個數
2.集合的各種方法
1)添加單個元素 Add()
//創建集合對象 ArrayList list = new ArrayList(); list.Add(1); list.Add(true); for (int i=0;i<list.Count;i++) { Console.WriteLine(list[i]); } Console.ReadKey();
2)添加集合元素 AddRange()
//創建集合對象 ArrayList list = new ArrayList(); list.AddRange(new int[] {1,2,3,4 }); for (int i=0;i<list.Count;i++) { Console.WriteLine(list[i]); } Console.ReadKey();
3)單個元素刪除 Remove()
ArrayList list = new ArrayList(); list.AddRange(new int[] {1,2,3,4 }); list.Remove(1); for (int i=0;i<list.Count;i++) { Console.WriteLine(list[i]); } Console.ReadKey();
4)根據索引下標對元素進行刪除 RemoveAt()
ArrayList list = new ArrayList(); list.AddRange(new int[] {1,2,3,4 }); list.RemoveAt(2); for (int i=0;i<list.Count;i++) { Console.WriteLine(list[i]); }
5)根據下標,刪除一定范圍為的元素 RemoveRange(下標位置,刪除個數)
ArrayList list = new ArrayList(); list.AddRange(new int[] {1,2,3,4 }); list.RemoveRange(2,1); for (int i=0;i<list.Count;i++) { Console.WriteLine(list[i]); }
6)進行升序排序,無法進行升序排序,報異常錯誤
sort():若有布爾等類型無法進行排序時,會出異常
7)進行反轉 Reverse()
ArrayList list = new ArrayList(); list.AddRange(new int[] {1,2,3,4 }); list.Reverse();
8)插入單個元素,無數據類型要求 Insert(下標位置,插入的數據)
ArrayList list = new ArrayList(); list.AddRange(new int[] {1,2,3,4 }); list.Insert(2,"插入的");
9)插入多個元素 InsertRange(下標位置,插入的一系列元素)
ArrayList list = new ArrayList(); list.AddRange(new int[] {1,2,3,4 }); list.InsertRange(2, new int[] { 5, 6, 8 });
10)判斷集合中是否包含某個元素 Contains()
ArrayList list = new ArrayList(); list.AddRange(new int[] {1,2,3,4 }); list.InsertRange(2, new int[] { 5, 6, 8 }); if (!list.Contains(1)) { list.Add(1); } else { Console.WriteLine("已經存在該元素"); }
11)清空所有元素 Clear()
ArrayList list = new ArrayList(); list.AddRange(new int[] {1,2,3,4 }); list.InsertRange(2, new int[] { 5, 6, 8 }); list.Clear();