在c#中,如果需要陣列的長度和元素的個數隨著程式的執行不斷改變,就可以使用arraylist類,該類是乙個可以動態增減成員的陣列。
一、arraylist類的常用屬性和方法
1. arraylist類的常用屬性
2. arraylist類的常用方法
二、arraylist類與array類的區別
?arraylist類實際上是array類的優化版本。
?arraylist只能定義一維陣列,arrays可以定義多維陣列。
?arraylist的下限始終為0,array可以定義自己的下限。
?arraylist的元素都是object型別的,因此需要進行裝箱和拆箱操作,記憶體分配的代價很高,而array的元素通常是特定型別的。
?arraylist的元素個數可以自動擴充套件,array的元素個數是固定的。
?arraylist具有新增、刪除、插入、移動和複製等方法。
三、示例
using system;
using system.collections.generic;
using system.linq;
using system.text;
using system.collections; // 匯入arraylist的命名空間
namespace test
console.writeline();
console.writeline("實際包含的陣列元素個數:" + alist.count);
console.writeline("目前能夠包含的陣列元素的最多個數:"+alist.capacity);
alist.insert(1, " c#"); // 在指定的索引位置插入元素c#
console.write("在索引值為1的位置插入:");
foreach (object obj in alist)
console.writeline();
console.writeline("實際包含的陣列元素個數:" + alist.count);
console.writeline("目前能夠包含的陣列元素的最多個數:"+alist.capacity);
alist.add("。");
console.writeline("新增。");
console.writeline("目前能夠包含的陣列元素的最多個數:"+alist.capacity);
alist.add("---"); // 集合容量不夠時,會出現位數的變化
console.writeline("新增---");
console.writeline("實際包含的陣列元素個數:" + alist.count);
console.writeline("目前能夠包含的陣列元素的最多個數:"+alist.capacity);
// 用索引方式獲取集合元素值
console.writeline("3號索引的:" + alist[3]);
// 利用contains方法,查詢集合中是否包含「?」
console.writeline("陣列中是否包含?:" + alist.contains("?"));
console.write("經過前面操作後的資料元素:");
foreach (object obj in alist)
console.writeline();
console.writeline("實際包含的陣列元素個數:" + alist.count);
console.writeline("目前能夠包含的陣列元素的最多個數:"+alist.capacity);
alist.remove("。"); // 移除集合中的「。」元素
alist.remove("?"); // 移除集合中的「?」元素
console.writeline("沒有包含?,減少1個元素,容量不變");
foreach (object obj in alist)
console.writeline();
console.writeline("實際包含的陣列元素個數:" + alist.count);
console.writeline("目前能夠包含的陣列元素的最多個數:"+alist.capacity);
alist.removeat(3); // 移除3號索引位的元素
console.write("移除3號索引位的元素:");
foreach (object obj in alist)
console.writeline();
console.writeline("實際包含的陣列元素個數:" + alist.count);
console.writeline("目前能夠包含的陣列元素的最多個數:"+alist.capacity);
alist.trimtosize(); // 縮減容量
console.writeline("目前能夠包含的陣列元素的最多個數:"+alist.capacity);
alist.clear(); // 清除arraylist中的所有元素
console.writeline("清除arraylist中的所有元素後:");
console.writeline("實際包含的陣列元素個數:" + alist.count);
console.writeline("目前能夠包含的陣列元素的最多個數:"+alist.capacity);
alist.trimtosize(); // 再次縮減容量
console.writeline("再次縮減容量後,能夠包含的陣列元素的最多個數:"
+alist.capacity);
console.readline();}}
}執行結果:
C 動態陣列ArrayList介紹
arraylist是一種動態陣列,其容量可隨著我們的需要自動進行擴充.arraylist位於system.collections命名空間中,所以我們在使用時,需要匯入此命名空間.下面,我們還是在student類的基礎上利用arraylist操作,從而了解arraylist的用法 code publi...
C 動態陣列ArrayList介紹
arraylist是一種動態陣列,其容量可隨著我們的需要自動進行擴充.arraylist位於system.collections命名空間中,所以我們在使用時,需要匯入此命名空間.下面,我們還是在student類的基礎上利用arraylist操作,從而了解arraylist的用法 public cla...
C 中的動態陣列ArrayList
arraylist就是實現了ilist,icollection,ienumerable,icloneable這幾個介面的動態陣列。即使.netframwork提供了一些更耐用更受歡迎的新的類,arraylist仍然十分有用。下面是一些在c 中使用arraylist的例項,一起看看其基本用法和一些高階...