List.Sort

Синтаксис

List.Sort(list as list, optional comparisonCriteria as any) as list  

Сведения

Сортирует список данных list по необязательным указанным критериям. Можно указать необязательный параметр comparisonCriteria как критерий сравнения. Он может принимать следующие значения:

  • Для управления порядком критерий сравнения может быть значением перечисления Order. (Order.Descending, Order.Ascending).

  • Чтобы вычислить ключ, используемый для сортировки, можно использовать функцию с одним аргументом.

  • Чтобы выбрать ключ и порядок, критерием сравнения может быть список, содержащий ключ и порядок ({each 1 / _, Order.Descending}).

  • Чтобы полностью управлять сравнением, можно использовать функцию с двумя аргументами. Эта функция будет передавать два элемента из списка (любые два элемента в любом порядке). Она должна вернуть одно из следующих значений:

    • -1 — первый элемент меньше второго.
    • 0 — элементы равны.
    • 1 — первый элемент больше второго.

    Value.Compare — это метод, который можно использовать для делегирования этой логики.

Пример 1

Сортировка списка {2, 3, 1}.

Использование

List.Sort({2, 3, 1})

Выходные данные

{1, 2, 3}

Пример 2

Сортировка списка {2, 3, 1} в порядке убывания.

Использование

List.Sort({2, 3, 1}, Order.Descending)

Выходные данные

{3, 2, 1}

Пример 3

Сортируйте список {2, 3, 1} в порядке убывания с помощью метода Value.Compare .

Использование

List.Sort({2, 3, 1}, (x, y) => Value.Compare(1/x, 1/y))

Выходные данные

{3, 2, 1}