Compartir a través de


List.Sort

Syntax

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

Acerca de

Ordena una lista de datos, , listsegún los criterios opcionales especificados. Un parámetro opcional, comparisonCriteria, se puede especificar como criterio de comparación. Esto puede tomar los siguientes valores:

  • Para controlar el orden, el criterio de comparación puede ser un valor de enumeración Order. (Order.Descending, Order.Ascending).

  • Para calcular una clave que se va a usar para ordenar, se puede usar una función de 1 argumento.

  • Para seleccionar una clave y un orden de control, el criterio de comparación puede ser una lista que contenga la clave y el orden ({each 1 / _, Order.Descending}).

  • Para controlar completamente la comparación, se puede usar una función de 2 argumentos. Esta función se pasará a dos elementos de la lista (cualquier dos elementos, en cualquier orden). La función debe devolver uno de los siguientes valores:

    • -1: el primer elemento es menor que el segundo elemento.
    • 0: los elementos son iguales.
    • 1: el primer elemento es mayor que el segundo elemento.

    Value.Compare es un método que se puede usar para delegar esta lógica.

Ejemplo 1

Ordene la lista {2, 3, 1}.

Uso

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

Salida

{1, 2, 3}

Ejemplo 2

Ordene la lista {2, 3, 1} en orden descendente.

Uso

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

Salida

{3, 2, 1}

Ejemplo 3

Ordene la lista {2, 3, 1} en orden descendente mediante el Value.Compare método .

Uso

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

Salida

{3, 2, 1}