Compartir a través de


Array.sortWith<'T> (Función de F#)

Ordena los elementos de una matriz usando la función de comparación especificada como criterio de ordenación y devuelve una nueva matriz.

Espacio de nombres/Ruta de acceso del módulo: Microsoft.FSharp.Collections.Array

Ensamblado: FSharp.Core (en FSharp.Core.dll)

// Signature:
Array.sortWith : ('T -> 'T -> int) -> 'T [] -> 'T []

// Usage:
Array.sortWith comparer array

Parámetros

  • comparer
    Tipo: 'T -> 'T ->int

    Función que se va a usar para comparar pares de elementos de matriz.

  • array
    Tipo: 'T[]

    Matriz de entrada.

Valor devuelto

Matriz ordenada.

Comentarios

No se trata de una ordenación estable, es decir, puede que no se conserve el orden original de los elementos iguales.Para obtener una ordenación estable, considere el uso de Seq.sort.

Esta función se denomina SortWith en los ensamblados compilados.Si obtiene acceso a la función desde un lenguaje distinto de F# o mediante reflexión, use este nombre.

Ejemplo

En el código siguiente se muestra el uso de Array.sortWith.

open System

let array1 = [| "<>"; "&"; "&&"; "&&&"; "<"; ">"; "|"; "||"; "|||" |]
printfn "Before sorting: "
array1 |> printfn "%A"
let sortFunction (string1:string) (string2:string) =
    if (string1.Length > string2.Length) then
       1
    else if (string1.Length < string2.Length) then
       -1
    else
        String.Compare(string1, string2)

Array.sortWith sortFunction array1
|> printfn "After sorting: \n%A"

Output

  

Plataformas

Windows 8, Windows 7, Windows Server 2012, Windows Server 2008 R2

Información de versiones

Versiones de la biblioteca básica de F#

Se admite en: 2.0, 4.0, portables

Vea también

Referencia

Collections.Array (Módulo de F#)

Microsoft.FSharp.Collections (Espacio de nombres de F#)