读书人

请教SortedList集合键的限制

发布时间: 2012-05-27 05:42:30 作者: rapoo

请问,SortedList集合键的限制
SortedList我试了一下,键可以是数字,Add的时候,会根据键进行自动排序。键也可以是string,虽然不能排序,但不报错。
可是如果键是list类型,要报错,这是为什么啊?
下面的代码报错----“未能比较数组中的两个元素”

public static void Main(string[] args)
{
SortedList<List<string>, string> dic = new SortedList<List<string>, string>();
dic.Add(new List<string>{"大概","地方"}, "hh");
dic.Add(new List<string> { "刚刚", "很久很久" }, "hh");
Console.ReadKey();
}



但是,下面的代码却是正确的,为什么啊

public static void Main(string[] args)
{
SortedList<string, string> dic = new SortedList<string, string>();
dic.Add("大概", "hh");
dic.Add( "刚刚", "hh");
Console.ReadKey();
}

[解决办法]
键是list类型?这个倒没见过,默认不允许吧。这样写比较的规则是什么?必须至少有一个对象实现 IComparable
[解决办法]

探讨
字符串能排序吗?

[解决办法]
字符串可以排序

[解决办法]
string 可以排序,按照ascii码排的。

读书人网 >C#

热点推荐