Partager via


List.Sort

Syntaxe

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

À propos

Trie une liste de données, listen fonction des critères facultatifs spécifiés. Un paramètre facultatif, comparisonCriteriapeut être spécifié comme critère de comparaison. Cela peut prendre les valeurs suivantes :

  • Pour contrôler l’ordre, le critère de comparaison peut être une valeur enum Order. (Order.Descending, Order.Ascending).

  • Pour calculer une clé à utiliser pour le tri, une fonction de 1 argument peut être utilisée.

  • Pour sélectionner une clé et un ordre de contrôle, le critère de comparaison peut être une liste contenant la clé et l’ordre ({each 1 / _, Order.Descending}).

  • Pour contrôler complètement la comparaison, une fonction de 2 arguments peut être utilisée. Cette fonction est passée à deux éléments de la liste (deux éléments, dans n’importe quel ordre). La fonction doit retourner l’une des valeurs suivantes :

    • -1: le premier élément est inférieur au deuxième élément.
    • 0: les éléments sont égaux.
    • 1: le premier élément est supérieur au deuxième élément.

    Value.Compare est une méthode qui peut être utilisée pour déléguer cette logique.

Exemple 1

Triez la liste {2, 3, 1}.

Utilisation

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

Output

{1, 2, 3}

Exemple 2

Triez la liste {2, 3, 1} dans l’ordre décroissant.

Utilisation

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

Output

{3, 2, 1}

Exemple 3

Triez la liste {2, 3, 1} dans l’ordre décroissant à l’aide de la Value.Compare méthode.

Utilisation

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

Output

{3, 2, 1}