Delen via


List.Sort

Syntaxis

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

Info

Hiermee sorteert u een lijst met gegevens, listvolgens de optionele criteria die zijn opgegeven. Een optionele parameter, comparisonCriteriakan worden opgegeven als het vergelijkingscriterium. Dit kan de volgende waarden aannemen:

  • Om de volgorde te bepalen, kan het vergelijkingscriterium een order-enumwaarde zijn. (Order.Descending, Order.Ascending).

  • Als u een sleutel wilt berekenen die moet worden gebruikt voor sorteren, kan een functie van 1 argument worden gebruikt.

  • Als u zowel een sleutel als een controlevolgorde wilt selecteren, kan het vergelijkingscriterium een lijst zijn met de sleutel en volgorde ({each 1 / _, Order.Descending}).

  • Om de vergelijking volledig te beheren, kan een functie van 2 argumenten worden gebruikt. Deze functie wordt doorgegeven aan twee items uit de lijst (twee items, in elke volgorde). De functie moet een van de volgende waarden retourneren:

    • -1: Het eerste item is kleiner dan het tweede item.
    • 0: De items zijn gelijk.
    • 1: Het eerste item is groter dan het tweede item.

    Value.Compare is een methode die kan worden gebruikt om deze logica te delegeren.

Voorbeeld 1

Sorteer de lijst {2, 3, 1}.

Gebruik

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

Uitvoer

{1, 2, 3}

Voorbeeld 2

Sorteer de lijst {2, 3, 1} in aflopende volgorde.

Gebruik

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

Uitvoer

{3, 2, 1}

Voorbeeld 3

Sorteer de lijst {2, 3, 1} in aflopende volgorde met behulp van de methode Value.Compare .

Gebruik

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

Uitvoer

{3, 2, 1}