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; } }