Saltar para o conteúdo principal

List.Sort

Ordena uma lista de dados de acordo com os critérios especificados.

Syntax

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

Remarks

Ordena uma lista de dados, list, de acordo com os critérios opcionais especificados. É possível especificar um parâmetro opcional, comparisonCriteria, como critério de comparação. Este parâmetro pode assumir os valores seguintes:

  • Para controlar a ordenação, o critério de comparação pode ser um valor de enumeração de Ordenação. (Order.Descending, Order.Ascending).
  • Para calcular uma chave a utilizar para a ordenação, é possível utilizar uma função de 1 argumento.
  • Para selecionar uma chave e controlar a ordenação, o critério de comparação pode ser uma lista que contém a chave e a ordem ({each 1 / _, Order.Descending}).
  • Para controlar totalmente a comparação, é possível utilizar uma função de 2 argumentos. Esta função irá receber dois itens da lista (quaisquer dois itens em qualquer ordem). A função deverá devolver um dos seguintes valores:
    • -1: O primeiro item é inferior ao segundo item.
    • 0: Os itens são idênticos.
    • 1: O primeiro item é superior ao segundo item.
    Value.Compare é um método que pode ser utilizado para delegar esta lógica.

Examples

Example #1

Ordenar a lista {2, 3, 1}.

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

Result:

{1, 2, 3}

Example #2

Ordenar a lista {2, 3, 1} por ordem descendente.

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

Result:

{3, 2, 1}

Example #3

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

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

Result:

{3, 2, 1}

Category

List.Ordering