public static FoodNameComparer Instance() { lock (locker) { if (_instance == null) { _instance = new FoodNameComparer(); } return(_instance); } }
static void Main(string[] args) { Food[] list = { new Food("Orange", FoodGroup.Fruit), new Food("banana", FoodGroup.Fruit), new Food("pear", FoodGroup.Fruit), new Food("apple", FoodGroup.Fruit), }; Array.Sort(list, FoodNameComparer.Instance()); foreach (var item in list) { Console.WriteLine(item); } }