我有一个字符串数组或arraylist传递给我在C#中的程序.以下是这些字符串包含的一些示例:
"Spr 2009""Sum 2006""2010年秋季""秋季2007"
我希望能够按年份和季节对这个阵列进行排序.有没有办法编写一个排序功能,告诉它按季节排序.我知道如果他们分开会更容易,但我无法帮助给予我什么.
您需要编写一个方法,以适当的方式比较任意两个字符串,然后您可以将该方法转换为Comparison<string>
委托以传递到Array.Sort
:
public static int CompareStrings(string s1, string s2)
{
// TODO: Comparison logic :)
}
...
string[] strings = { ... };
Array.Sort(strings, CompareStrings);
Run Code Online (Sandbox Code Playgroud)
您也可以使用通用列表执行相同的操作:
List<string> strings = ...;
strings.Sort(CompareStrings);
Run Code Online (Sandbox Code Playgroud)