C#集合之有序列表怎么用
本文小编为大家详细介绍“C#集合之有序列表怎么用”,内容详细,步骤清晰,细节处理妥当,希望这篇“C#集合之有序列表怎么用”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。
如果需要基于键对所需集合排序,就可以使用SortedList<TKey,TValue>类。这个类按照键给元素排序。这个集合中的值和键都可以使用任何类型。定义为键的自定义类型需要实现IComparer<T>接口,用于给列表中的元素排序。
使用构造函数创建一个有序列表,在用Add方法添加:
var books = new SortedList<string, string>(); books.Add("Professional WPF Programming", "978–0–470–04180–2"); books.Add("Professional ASP.NET MVC 3", "978–1–1180–7658–3");
还可以使用索引器将元素添加到列表中
books["Beginning Visual C# 2010"] = "978–0–470-50226-6"; books["Professional C# 4 and .NET 4"] = "978–0–470–50225–9"; SortedList<TKey,TValue>有多个重载版本的构造函数。
可以使用foreach语句遍历列表,枚举器返回的元素是KeyValuePair<TKey,TValue>类型,其中包含了键和值:
foreach (KeyValuePair<string, string> book in books) { Console.WriteLine("{0}, {1}", book.Key, book.Value); }
迭代语句会按键的顺序显示:
Beginning Visual C# 2010, 978–0–470-50226-6 Professional ASP.NET MVC 3, 978–1–1180–7658–3 Professional C# 4 and .NET 4, 978–0–470–50225–9 Professional WPF Programming, 978–0–470–04180–2
也可以使用Values和Keys属性访问值和键:
foreach (string isbn in books.Values) { Console.WriteLine(isbn); } foreach (string title in books.Keys) { Console.WriteLine(title); }
如果尝试使用索引器访问一个元素,但传递的键不存在,就会抛出异常。ContainsKey()方法,可以判断所传递的键是否存在于集合中。TryGetValue该方法尝试获得指定键的值,如果指定的=键对应的值不存在,该方法不会抛出异常。
读到这里,这篇“C#集合之有序列表怎么用”文章已经介绍完毕,想要掌握这篇文章的知识点还需要大家自己动手实践使用过才能领会,如果想了解更多相关内容的文章,欢迎关注编程网行业资讯频道。
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341