c# 動態數組 ArrayList

來源:互聯網
上載者:User

http://anony3721.blog.163.com/blog/static/5119742010728102932277/

1、什麼是ArrayList
ArrayList就是傳說中的動態數組,用MSDN中的說法,就是Array的複雜版本,它提供了如下一些好處:
動態增加和減少元素;實現了ICollection和IList介面;靈活的設定數組的大小。
2、如何使用ArrayList
最簡單的例子:

ArrayList List = new ArrayList();
for( int i=0;i<10;i++ ) //給數組增加10個Int元素         List.Add(i); 
//..程式做一些處理
List.RemoveAt(5);//將第6個元素移除
for( int i=0;i<3;i++ ) //再增加3個元素
      List.Add(i+20);
Int32[] values = (Int32[])List.ToArray(typeof(Int32));//返回ArrayList包含的數組

這是一個簡單的例子,雖然沒有包含ArrayList所有的方法,但是可以反映出ArrayList最常用的用法。

C# 不支援動態數組,用 ArrayList 可以實現動態數組的功能。

ArrayList 的名稱空間是 System.Collections。

ArrayList 元素類型

和數組不同,ArrayList 的各個元素的類型可以不同。

聲明對象

//聲明 ArrayList 有三種重載方法,較常用的有兩種
ArrayList al = new ArrayList();
ArrayList al = new ArrayList(3);

上例中,參數值 3 表示容量,即可以容納多少個元素。

ArrayList對象就是一個可變長的數組,可以根據需要添加元素.使用ArrayList的方法可以向數組列表中添加元素,或取出,修改某個元素.如:ArrayList MyArrayList = new ArrayList();MyArrayList.add("Caoxi");MyArrayList.Clear();

ArrayList中取出的對象都是object類型,使用前要將其轉換成合適的類型.ArrayList theArrayList = new ArrayList();theArrayList.Add("1");theArrayList.Add("2");string s = (string)theArrayList[0];string s1 = (string)theArrayList[1];注意Contains()方法       如果ArrayList中包含參數提供的對象,則返回true,否則返回falseif (theArrayList.Contains("1"))     //判斷字元"1"是否存在於ArrayList  ---------------------------------------------------------------------------------------------

在C#當中,集合有我們常用C# Arraylist(動態數組),Hashtable(關健字和值的尋找表)和不常用的BitArray(位元組),Queue(先進先出的集合),SortedList(有序例表),Stack(後進先出的棧)等等。

其實集合就是將一組有序的資料群組合在一起並能對其進行有效處理。在這裡我們主要介紹常用C# Arraylist與Hashtable。

Arraylist

類似於一維動態數組,在Arraylist中可以存放任何對像,Arraylist的常用方法有以下三種:增加元素Add(),插入元素Insert(),刪除元素Remove()。

 
  1. using System.Collections;  
  2. public static void Main()  
  3. {  
  4. ArrayList arr = new ArrayList();  
  5. arr.Add(10);//為集合添加一個值  
  6. arr.Add(10);//添加第二個值  
  7. arr.Insert(0, 8);//在第0索引位置插入一個值8  
  8. Console.WriteLine(arr.IndexOf(10, 2));  
  9. //搜尋指從索引從0到2的值為10的數量.  
  10. foreach (int a in arr)//遍曆集合arr  
  11. {  
  12. Console.WriteLine(a);  
  13. }  
  14.  

Hashtable

是用來存入鍵/值對的集合,如果有需要同時存放鍵並對應有值的時候我們可以用Hashtable 。

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.