Как отсортировать массив объектов класса по числовому свойству класса - PullRequest
0 голосов
/ 10 ноября 2011

Я храню объекты класса в массиве объектов того же класса.

MyClass[] objectsOfMyClass = new MyClass[9];

Теперь я хочу отсортировать в порядке убывания объекты, хранящиеся в массиве, в соответствии с числовым свойством объектов.

Ответы [ 3 ]

3 голосов
/ 10 ноября 2011
objectsOfMyClass.OrderByDescending(obj => obj.NumericProperty)

Для вашей информации, это использует Linq к объектам

1 голос
/ 10 ноября 2011

Вы можете использовать Array.Sort() метод перегрузки, который принимает Comparison<T>:

Array.Sort(objectsOfMyClass, (o1, o2) => o2.NumericProperty.CompareTo(o1.NumericProperty));
1 голос
/ 10 ноября 2011

Вам нужно OrderByDescending .Он не будет сортировать массив, но вернет IEnumerable, который упорядочен правильно.

var orderedArray = objectsOfMyClass.OrderByDescending(m => m.MyProperty).ToArray();

ToArray может не потребоваться в зависимости от того, что вы делаете с результатом.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...