Создаем портфолио за 1 месяц
К концу месяца: 4 классных проекта в вашем портфолио! Стоимость: 100$. Подробности...
⊗csSpEqSc 98 of 509 menu
◀ ▶

Отдельный класс comparer в C#

Правило сортировки можно вынести в отдельный класс с IComparer<T> или передать лямбдой в Comparer<T>.Create. Так упорядочивают чужие типы, не меняя их исходный код.

Класс SortedSet<string> всегда держит элементы отсортированными по выбранному comparer.

Построим множество строк в обратном алфавитном порядке. Свойство Min вернёт "c": по этому правилу наименьшей считается строка, которая в обычном алфавите стоит позже:

SortedSet<string> set = new SortedSet<string>( Comparer<string>.Create((a, b) => b.CompareTo(a))); set.Add("a"); set.Add("c"); Console.WriteLine(set.Min);

Добавьте коды "red" и "blue" в набор с обратным алфавитным порядком и выведите элемент, который набор считает наименьшим.

← →
↑
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить