Поделиться через


List.Sort

Синтаксис

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

О программе

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

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

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

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

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

    • -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}