c# ArrayList
1、什么是ArrayList
ArrayList就是傳說中的動態(tài)數(shù)組,用MSDN中的說法,就是Array的復(fù)雜版本,它提供了如下一些好處:
動態(tài)的增加和減少元素;實現(xiàn)了ICollection和IList接口;靈活的設(shè)置數(shù)組的大小。
2、如何使用ArrayList
最簡單的例子:
ArrayList List = new ArrayList();
for( int i=0;i10;i++ ) //給數(shù)組增加10個Int元素
List.Add(i);
//..程序做一些處理
List.RemoveAt(5);//將第6個元素移除
for( int i=0;i3;i++ ) //再增加3個元素
List.Add(i+20);
Int32[] values = (Int32[])List.ToArray(typeof(Int32));//返回ArrayList包含的數(shù)組
這是一個簡單的例子,雖然沒有包含ArrayList所有的方法,但是可以反映出ArrayList最常用的用法。
C# 不支持動態(tài)數(shù)組,用 ArrayList 可以實現(xiàn)動態(tài)數(shù)組的功能。
ArrayList 的名稱空間是 System.Collections。
ArrayList 元素類型
和數(shù)組不同,ArrayList 的各個元素的類型可以不同。
聲明對象
//聲明 ArrayList 有三種重載方法,較常用的有兩種
ArrayList al = new ArrayList();
ArrayList al = new ArrayList(3);
上例中,參數(shù)值 3 表示容量,即可以容納多少個元素。
ArrayList對象就是一個可變長的數(shù)組,可以根據(jù)需要添加元素.使用ArrayList的方法可以向數(shù)組列表中添加元素,或取出,修改某個元素.
如:
ArrayList MyArrayList = new ArrayList();
MyArrayList.add("Caoxi");
MyArrayList.Clear();
ArrayList中取出的對象都是object類型,使用前要將其轉(zhuǎn)換成合適的類型.
ArrayList theArrayList = new ArrayList();
theArrayList.Add("1");
theArrayList.Add("2");
string s = (string)theArrayList[0];
string s1 = (string)theArrayList[1];
注意Contains()方法 如果ArrayList中包含參數(shù)提供的對象,則返回true,否則返回false
if (theArrayList.Contains("1")) //判斷字符"1"是否存在于ArrayList
---------------------------------------------------------------------------------------------
在C#當中,集合有我們常用C# Arraylist(動態(tài)數(shù)組),Hashtable(關(guān)健字和值的查找表)和不常用的BitArray(位數(shù)組),Queue(先進先出的集合),SortedList(有序例表),Stack(后進先出的棧)等等。
其實集合就是將一組有序的數(shù)據(jù)組合在一起并能對其進行有效的處理。在這里我們主要介紹常用C# Arraylist與Hashtable。