排序含有数字的字符串:一个巧妙地方法
using System;
using System.Collections.Generic;
class Program
{
static void Main(string[] args)
{
string[] floors ={ "第3楼", "第2楼", "第11楼" };
Array.Sort<string>(floors, Factory.Comparer);
foreach (string s in floors)
Console.WriteLine(s);
Console.ReadKey();
}
}
// 工厂模式
class Factory : IComparer<string>
{
private Factory() { }
public static IComparer<string> Comparer
{
get { return new Factory(); }
}
public int Compare(string x, string y)
{
return x.Length == y.Length ? x.CompareTo(y) : x.Length - y.Length;
}
}