按字母顺序对集合进行排序

时间:2010-08-16 15:59:19

标签: c# sorting

开箱即用,有没有办法按字母顺序对集合进行排序(使用C#2.0?)。

由于

5 个答案:

答案 0 :(得分:12)

我们在谈论什么样的系列?一个List<T>ICollection<T>?阵列?存储在集合中的类型是什么?

假设List<string>,您可以这样做:

 List<string> str = new List<string>();
 // add strings to str

 str.Sort(StringComparer.CurrentCulture);

答案 1 :(得分:4)

您可以使用SortedList

答案 2 :(得分:3)

Array.Sort怎么样?即使您不提供自定义比较器,默认情况下它也会按字母顺序对数组进行排序:

var array = new string[] { "d", "b" };

Array.Sort(array); // b, d

答案 3 :(得分:1)

List<string> stringList = new List<string>(theCollection);
stringList.Sort();

List<string>实现ICollection<string>,因此即使转换为列表,您仍将拥有所有以集合为中心的功能。

答案 4 :(得分:1)

这可能不是开箱即用的,但您也可以使用LinqBridge http://www.albahari.com/nutshell/linqbridge.aspx在2.0中执行LINQ查询(但建议使用Visual Studio 2008)。