Partilhar via


List.Sort

Sintaxe

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

Sobre nós

Classifica uma lista de dados, list, de acordo com os critérios opcionais especificados. Um parâmetro opcional, comparisonCriteria, pode ser especificado como critério de comparação. Isso pode ter os seguintes valores:

  • Para controlar a ordem, o critério de comparação pode ser um valor de enum da ordem. (Ordem.Decrescente, Ordem.Crescente).

  • Para calcular uma chave a ser usada para classificação, uma função de 1 argumento pode ser usada.

  • Para selecionar uma chave e uma ordem de controle, o critério de comparação pode ser uma lista contendo a chave e a ordem ({each 1 / _, Order.Descending}).

  • Para controlar completamente a comparação, uma função de 2 argumentos pode ser usada. Esta função receberá dois itens da lista (quaisquer dois itens, em qualquer ordem). A função deve retornar um dos seguintes valores:

    • -1: O primeiro item é menor que o segundo.
    • 0: Os itens são iguais.
    • 1: O primeiro item é maior do que o segundo item.

    Value.Compare é um método que pode ser usado para delegar essa lógica.

Exemplo 1

Ordene a lista {2, 3, 1}.

Utilização

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

Saída

{1, 2, 3}

Exemplo 2

Ordene a lista {2, 3, 1} por ordem decrescente.

Utilização

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

Saída

{3, 2, 1}

Exemplo 3

Ordene a lista {2, 3, 1} por ordem decrescente utilizando o método Value.Compare.

Utilização

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

Saída

{3, 2, 1}