C# SortedList 类实现了 IDictionary 接口 ,集合中的值都是以键值对的形式存取的。
C# SortedList 称为有序列表,按照 key 值对集合中的元素排序。
SortedList 集合中所使用的属性和方法与上一节《C# Hashtable》中介绍的 Hashtable 比较类似,这里不再赘述。
下面通过实例来演示 SortedList 集合的使用。
【实例】使用 SortedList 实现挂号信息的添加、查找以及遍历操作。
根据题目要求,向 SortedList 集合中添加 3 位挂号信息(挂号编号、姓名),并根据患者编号查找患者姓名,遍历所有的挂号信息。具体的代码如下。
class Program
{
static void Main(string[] args)
{
SortedList sortList = new SortedList();
sortList.Add(1, "小张");
sortList.Add(2, "小李");
sortList.Add(3, "小刘");
Console.WriteLine("请输入挂号编号:");
int id = int.Parse(Console.ReadLine());
bool flag = sortList.ContainsKey(id);
if (flag)
{
string name = sortList[id].ToString();
Console.WriteLine("您查找的患者姓名为:{0}", name);
}
else
{
Console.WriteLine("您查找的挂号编号不存在!");
}
Console.WriteLine("所有的挂号信息如下:");
foreach(DictionaryEntry d in sortList)
{
int key = (int)d.Key;
string value = d.Value.ToString();
Console.WriteLine("挂号编号:{0},姓名:{1}", key, value);
}
}
}
执行上面的代码,效果如下图所示。
从上面的执行效果可以看出,SortedList 集合中的元素是按 key 值的顺序排序的。