Блок является лучшим первым языком программирования.
Вы можете использовать перегрузку Array.Sort
, которая принимает параметр Comparison
:
Array.Sort(myClassArray,
delegate(MyClass x, MyClass y) { return x.Name.CompareTo(y.Name); });
Пусть MyClass реализует интерфейс IComparable , а затем использует Array.Sort
Что-то подобное будет работать для CompareTo (при условии, что свойство Name имеет строку типа)
public int CompareTo(MyClass other)
{
return this.Name.CompareTo(other.Name);
}
Или просто с помощью Linq
MyClass[] sorted = myClassArray.OrderBy(c => c.Name).ToArray();