C# ArrayList集合


C# ArrayList集合
 
集合
可以向數組那樣存儲多個數據,但是長度不固定。往其中存多少個都可以。
    ArrayList:動態數組(不是一個數組,是具有數組的功能再克服了數組的缺點)
    ArrayList所在的命名空間:System.Collections
    它是1個類,所以我們要使用的話,就必須要創建1個對象。
    元素的類型:object   就算看起來存儲滿了,其實它還會自動增長。
 
ArrayList的用法

 1 using System;
 2 using System.Collections.Generic;
 3 using System.Linq;
 4 using System.Text;
 5 //引入 ArrayList 所在的命名空間
 6 using System.Collections;
 7 
 8 namespace Test
 9 {
10     class Program
11     {
12         static void Main(string[] args)
13         {
14             //創建 ArrayList 數組
15             ArrayList array = new ArrayList();
16 
17             //用Add 方法往 ArrayList 添加數據
18             array.Add("ABC");
19             array.Add(123);
20             //用Insert 方法,傳入下標和值的方式添加數據
21             array.Insert(2, "新插入的值");
22 
23             //修改 ArrayList 里的數據
24             array[1] = 456;
25 
26             //用 RemoveAt 方法根據下標移除 ArrayList 里的數據
27             array.RemoveAt(0);
28             //用 RemoveAt 方法刪除數據,會刪除集合中第一個和傳入的數據相等的元素。
29             array.Remove("ABC");
30 
31             //遍歷 ArrayList里面的數據
32             foreach (var item in array)
33             {
34                 Console.WriteLine(item);
35             }
36             
37         }
38     }
39 }

 

ArrayList存儲數據的原理
     真正存儲數據的是1個object類型的數組。object[] _items
     在靜態構造函數中創建了1個0個長度的object數組。在實例構造函數中將0個長度的數組賦值給了_items字段。
     所以  在創建完ArrayList對象以后,這個集合對象中的_items數組有0個長度。
     當我們第一次往其中存儲數據的時候,會創建1個4個長度的數組被items字段指向。將值存儲到該數組中。
     集合中存儲數據的是1個object數組。所以ArrayList中可以存儲任意類型的數據。會將其加到ArrayList集合中。
 
     Add()方法   將數據存儲到集合中,返回數據的下標。參數是1個object類型。所以我們可以給任意的1個數據。
     AddRange()  需要傳入1個ICollection對象。數組和ArrayList集合就是他的子類。可以傳入一個數組,也可以傳入一個ArrayList集合,如果是這樣,它會將數組/集合中的每一個元素,加到集合對象中去。
 
ArrayList集合的其他用法
  Remove()方法  傳入一個數據  會刪除集合中第一個和傳入的數據相等的元素。
      RemoveAt()方法  傳入下標,刪除指定下標的元素。
      RemoveRange()  從指定的下標開始刪除指定個數的元素。每刪除一個元素的時候,這個元素的后面的元素的下標會發生改變。並且Count屬性的值也會減小。
      Clear() 方法 清空集合中的所有數據
      Count()屬性可以得到集合中真實有效的元素的個數
      Contains ()方法  判斷集合中是否包含指定的元素
      GetRange()  從1個大集合中得到一個小集合
      IndexOf() 查找指定的元素在集合中第一次出現的下標,如果沒有返回-1.
      Insert()   在指定的下標插入元素
      Reverse()  翻轉集合中的元素
      Sort()   升序排序集合中的元素。只適合於元素是數組類型的。
      ToArray()  將集合轉換成為1個數組
      TrimToSize()   將集合中存儲數據的數組的多余的元素刪除。
 
 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM