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

Класс Comparer

Класс Comparer<T> реализует IComparer<T>. Статическое свойство Default возвращает сравниватель по умолчанию для T.

Синтаксис

Comparer<T> comparer = Comparer<T>.Default;

Пример

Давайте возьмём Comparer для int:

using System; using System.Collections.Generic; class Program { static void Main() { Console.WriteLine(Comparer<int>.Default.Compare(1, 2)); } }

Результат выполнения кода:

-1

Пример

Давайте отсортируем список:

using System; using System.Collections.Generic; class Program { static void Main() { List<int> nums = new List<int> {5, 1, 4, 2, 3}; nums.Sort(Comparer<int>.Default); Console.WriteLine(string.Join(" ", nums)); } }

Результат выполнения кода:

1 2 3 4 5

Пример

Давайте выполним BinarySearch:

using System; using System.Collections.Generic; class Program { static void Main() { List<int> nums = new List<int> {1, 2, 3, 4, 5}; Console.WriteLine(nums.BinarySearch(3, Comparer<int>.Default)); } }

Результат выполнения кода:

2

Пример

Давайте проверим, что "b" больше "a":

using System; using System.Collections.Generic; class Program { static void Main() { Console.WriteLine(Comparer<string>.Default.Compare("b", "a") > 0); } }

Результат выполнения кода:

True

Смотрите также

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