Dela via


List.Sort

Syntax

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

Om

Sorterar en lista med data, list, enligt de valfria villkor som angetts. En valfri parameter, comparisonCriteria, kan anges som jämförelsevillkor. Detta kan ta följande värden:

  • För att kontrollera ordningen kan jämförelsekriteriet vara ett värde av typen Order-enum. (Sortering.Fallande, Sortering.Stigande).

  • För att beräkna en nyckel som ska användas för sortering kan en funktion med 1 argument användas.

  • För att både välja en nyckel och kontrollordning kan jämförelsekriteriet vara en lista som innehåller nyckeln och ordningen ({each 1 / _, Order.Descending}).

  • För att helt kontrollera jämförelsen kan en funktion med 2 argument användas. Funktionen kommer att få två objekt från listan (två objekt i valfri ordning). Funktionen bör returnera något av följande värden:

    • -1: Det första objektet är mindre än det andra objektet.
    • 0: Objekten är lika.
    • 1: Det första objektet är större än det andra objektet.

    Value.Compare är en metod som kan användas för att delegera den här logiken.

Exempel 1

Sortera listan {2, 3, 1}.

Användning

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

utdata

{1, 2, 3}

Exempel 2

Sortera listan {2, 3, 1} i fallande ordning.

Användning

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

utdata

{3, 2, 1}

Exempel 3

Sortera listan {2, 3, 1} i fallande ordning med hjälp av metoden Value.Compare.

Användning

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

resultat

{3, 2, 1}