C# ArrayList 的三個屬性 Capacity Count Item[]


 1 using System;
 2 using System.Collections;
 3 
 4 namespace C_9_4
 5 {
 6     class Program
 7     {
 8 
 9         static void Main(string[] args)
10         {
11             //ArrayList類
12             //ArrayList和List都是放在Collections里面的如果要使用需再class類前面加上
13             //using System.Collections;才可以使用
14 
15             //ArrayList類的屬性,這是不同於方法的東西
16             //Capacity
17             //Count
18             //Item
19 
20             //有一下幾個特點。
21             /*
22                 1.Array的容量和元素個數是固定的,但是ArrayList是可以改變的
23                 2.Array一次只能對一個元素進行操作,但是ArrayList可以一次追加插入或者移除一組元素
24                 3.ArrayList可以存放多種類型的數據,此時取值要強制轉換(拆箱)
25                 4.Array的啟示下標是可以設置的,ArrayList的啟示下標始終是0
26                 5.Array可以是多維的,ArrayList始終是一維的
27 
28 
29              */
30 
31             //先定義一個ArrayList類
32             ArrayList a = new ArrayList(10);
33             //這里()內的大小可以寫也可以不寫
34             //我們再定義一個不寫大小的
35             ArrayList b = new ArrayList();
36 
37             //Capacity獲取ArrayList可包含的元素個數
38             a = new ArrayList(10) {"111",2,3,4,5,6,7,'A',8,9.666 ,10};
39             //運行后沒有報錯,證明了ArrayList類中可以存放不同類型數據
40             //ArrayList里面的類應該是obj類型的
41 
42             b = a;//這里也可以進行賦值的操作
43 
44             Console.WriteLine("檢查變量a可容納的元素={0}",a.Capacity.ToString());//20
45             //使用指定格式將此實例的值轉換成其等效的字符串表示,這就是ToString()在這里的作用
46             //a.Capacity表示選用屬性,后面加.ToString()表示調用方法
47             //Console.WriteLine("檢查變量a目前存放的元素個數={0}", a.Capacity);其實這里不加.ToString也是可以的,只是后面懶得改了,,,
48             //這里顯示可以包含20個元素
49             //但是我們設置的是10個元素為什么會變成20呢?
50             //因為我們實際輸入的元素超過了10,而ArrayList在無法裝下的時候會自動讓空間翻倍
51             //所以這里變成了20
52 
53             b = new ArrayList(10) {1,2,3,4,5,6 };
54             Console.WriteLine("檢查變量b可容納的元素={0}", b.Capacity.ToString());//10
55             //而這里我們沒有放滿10個元素,則可容納的元素任然是10
56 
57             b = new ArrayList(10) { 1, 2, 3, 4, 5, 6 ,7,8,9,9.66};
58             Console.WriteLine("檢查變量b可容納的元素={0}", b.Capacity.ToString());//10
59             b = new ArrayList(10) { 1, 2, 3, 4, 5, 6, 7, 8, 9,"12" };
60             Console.WriteLine("檢查變量b可容納的元素={0}", b.Capacity.ToString());//10
61             b = new ArrayList(10) { 1, 2, 3, 4, 5, 6, 7, 8, 9, "122222222" };
62             Console.WriteLine("檢查變量b可容納的元素={0}", b.Capacity.ToString());//10
63             b = new ArrayList(10) { 1, 2, 3, 4, 5, 6, 7, 8, 9, "AB" };
64             Console.WriteLine("檢查變量b可容納的元素={0}", b.Capacity.ToString());//10
65             b = new ArrayList(10) { 1, 2, 3, 4, 5, 6, 7, 8, 9, "AB12" };
66             Console.WriteLine("檢查變量b可容納的元素={0}", b.Capacity.ToString());//10
67             //通過對上面數據的測試,我們發現,""字符串的數據也只占用一個元素
68 
69             //Count表示元素現在包含的元素的數量
70             //這里直接繼續使用a和b做對比
71             Console.WriteLine("檢查變量a目前存放的元素個數={0}",a.Count);
72             Console.WriteLine("檢查變量b目前存放的元素個數={0}",b.Count);
73 
74             //Item[]
75             //即獲取指定索引處的元素。
76             //和數組的使用沒有區別
77             int i = 0;
78             Console.WriteLine("獲得a指定索引{0}處的數據={1}",++i,a[i]);
79 
80 
81 
82 
83         }
84     }
85 }

 


免責聲明!

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



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