Leggere in inglese

Condividi tramite


List.Sort

Sintassi

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

Informazioni su

Ordina un elenco di dati, list, in base ai criteri facoltativi specificati. È possibile specificare un parametro facoltativo, comparisonCriteria, come criterio di confronto. I valori supportati per il parametro sono i seguenti:

  • Per controllare l'ordine, il criterio di confronto può essere un valore di enumerazione Order. (Order.Descending, Order.Ascending).

  • Per calcolare una chiave da usare per l'ordinamento, è possibile usare una funzione di 1 argomento.

  • Per selezionare sia una chiave che l'ordine, il criterio di confronto può essere un elenco contenente la chiave e l'ordine ({each 1 / _, Order.Descending}).

  • Per controllare completamente il confronto, è possibile usare una funzione di 2 argomenti. A questa funzione vengono passati due elementi dell'elenco (due elementi qualsiasi, in qualsiasi ordine). La funzione deve restituire uno dei valori seguenti:

    • -1: il primo elemento è minore del secondo elemento.
    • 0: gli elementi sono uguali.
    • 1: il primo elemento è maggiore del secondo elemento.

    Value.Compare è un metodo che può essere usato per delegare questa logica.

Esempio 1

Ordinare l'elenco {2, 3, 1}.

Utilizzo

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

Output

{1, 2, 3}

Esempio 2

Ordinare l'elenco {2, 3, 1} in ordine decrescente.

Utilizzo

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

Output

{3, 2, 1}

Esempio 3

Ordinare l'elenco {2, 3, 1} in ordine decrescente usando il metodo Value.Compare.

Utilizzo

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

Output

{3, 2, 1}