SortedList的用法比ArrayList更具有彈性,不僅其長度是「可變的」、陣列清單不須宣告資料形態,亦可自行設定搜尋之索引。索引可以是任何物件。要注意的是,「索引」和「序數」是兩個不同的概念。SortedList同時使用索引和序數來定位元素。索引由使用者自行設定,至於序數則是由系統設定。
※ 重要:要使用SortedList,必須在程式開頭處加上這一行:
using System.Collections;
1. SortedList的宣告:
SortedList B= new SortedList();
在宣告之後,這個SortedList的長度是0。要使用Add方法來為SortedList加入元素,如:
SortedList名稱.Add(索引,值); //其中,索引和值一樣可以是任何物件。
之後,才能對清單的值進行呼叫與重設:
清單名稱[索引]; //呼叫該索引之元素的值
清單名稱[索引]=值; //重設該索引之元素的值為值
※ 註:回傳的值是以Object的資料型態回傳,並非以原先設定時的型態回傳。
例如:
SortedList A= new SortedList();
A.Add("one","一");
A.Add("two","二");
A.Add("three", Color.Red);
textBox1.Text = A["one"].ToString(); //就算在設定A["one"]時,A["one"]的值是個string,其回傳的仍是一個Object的資料型態,故仍須轉換回string。
若值是某類別物件,則在取值時應以該類別的資料型態來解碼該值,即如下:
類別名稱 變數名稱=(類別名稱) SortedList名稱["索引"];
2. SortedList所常用的成員及方法:
(1) 常用的成員:
※ SortedList名稱.Count:這是一個int,代表該SortedList的長度(元素數目)。
(2) 常用的成員函式:
※ SortedList名稱.Add(索引,值):可將該索引和值加入此SortedList。其中,索引和值可以是任何物件。
※ SortedList名稱.Clear():把這個SortedList中所有的元素都刪除。這樣一來,SortedList的長度會變成0。
※ SortedList名稱.Remove(索引):無回傳值。可將該SortedList之索引為索引的元素刪除。
※ SortedList名稱.GetByIndex(N):回傳該SortedList中,序數為N之元素的值。
※ SortedList名稱. GetKey(N):回傳該SortedList中,序數為N之元素的索引。
※ SortedList名稱.RemoveAt(N):無回傳值。刪除該SortedList中,序數N的元素。而其後面的元素往前順移排列。
※ SortedList名稱.IndexOfKey(索引):回傳該所引的序數,其值從0開始算起。若這個SortedList中沒有該索引,則為回傳-1。
留言列表