SortedList【排序列表】


C# 集合 C# 集合

SortedList 類代表了一系列按照鍵來排序鍵/值對,這些鍵值對可以通過索引來訪問。

排序列表是數組和哈希表的組合。它包含一個可使用鍵或索引訪問各項的列表。如果您使用索引訪問各項,則它是一個動態數組(ArrayList)如果您使用鍵訪問各項,則它是一個哈希表(Hashtable)。集合中的各項總是按鍵值排序。

SortedList 類的方法和屬性

下表列出了 SortedList 類的一些常用的 屬性

屬性 描述
Capacity 獲取或設置 SortedList 的容量。
Count 獲取 SortedList 中的元素個數。
IsFixedSize 獲取一個值,表示 SortedList 是否具有固定大小。
IsReadOnly 獲取一個值,表示 SortedList 是否只讀。
Item 獲取或設置與 SortedList 中指定的鍵相關的值。
Keys 獲取 SortedList 中的鍵。
Values 獲取 SortedList 中的值。

下表列出了 SortedList 類的一些常用的 方法

序號 方法名 & 描述
1 public virtual void Add( object key, object value );
向 SortedList 添加一個帶有指定的鍵和值的元素。
2 public virtual void Clear();
從 SortedList 中移除所有的元素。
3 public virtual bool ContainsKey( object key );
判斷 SortedList 是否包含指定的鍵。
4 public virtual bool ContainsValue( object value );
判斷 SortedList 是否包含指定的值。
5 public virtual object GetByIndex( int index );
獲取 SortedList 的指定索引處的值。
6 public virtual object GetKey( int index );
獲取 SortedList 的指定索引處的鍵。
7 public virtual IList GetKeyList();
獲取 SortedList 中的鍵。
8 public virtual IList GetValueList();
獲取 SortedList 中的值。
9 public virtual int IndexOfKey( object key );
返回 SortedList 中的指定鍵的索引,索引從零開始。
10 public virtual int IndexOfValue( object value );
返回 SortedList 中的指定值第一次出現的索引,索引從零開始。
11 public virtual void Remove( object key );
從 SortedList 中移除帶有指定的鍵的元素。
12 public virtual void RemoveAt( int index );
移除 SortedList 的指定索引處的元素。
13 public virtual void TrimToSize();
設置容量為 SortedList 中元素的實際個數。

 

實例

下面的實例演示了排序列表(SortedList)的概念:

using System; using System.Collections; namespace CollectionsApplication { class Program { static void Main(string[] args) { SortedList sl = new SortedList(); sl.Add("001", "Zara Ali"); sl.Add("002", "Abida Rehman"); sl.Add("003", "Joe Holzner"); sl.Add("004", "Mausam Benazir Nur"); sl.Add("005", "M. Amlan"); sl.Add("006", "M. Arif"); sl.Add("007", "Ritesh Saikia"); if (sl.ContainsValue("Nuha Ali")) { Console.WriteLine("This student name is already in the list"); } else { sl.Add("008", "Nuha Ali"); } // 獲取鍵的集合  ICollection key = sl.Keys; foreach (string k in key) { Console.WriteLine(k + ": " + sl[k]); } } } }

當上面的代碼被編譯和執行時,它會產生下列結果:

001: Zara Ali 002: Abida Rehman 003: Joe Holzner 004: Mausam Banazir Nur 005: M. Amlan 006: M. Arif 007: Ritesh Saikia 008: Nuha Ali


免責聲明!

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



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