Интерфейс IComparable в C#
Интерфейс IComparable<T> связывает тип с «естественным» порядком: метод
CompareTo сравнивает текущий экземпляр с другим того же типа.
Метод List<T>.Sort() без отдельного правила сравнения
берёт этот порядок, если тип элемента его реализует.
Сравним две записи с разным количеством очков. Положительное
число означает, что у a больше очков, чем у b:
Score a = new(5);
Score b = new(3);
Console.WriteLine(a.CompareTo(b));
record Score(int Points) : IComparable<Score>
{
public int CompareTo(Score? other) =>
Points.CompareTo(other?.Points ?? 0);
}
Опишите три заказа с номерами 40, 15 и 8. Упорядочьте их по возрастанию номера и выведите номер первого.