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 7, Windows Vista SP2, Windows XP SP3, Windows XP x64 SP2, Windows Server 2008 R2, Windows Server 2008 SP2, Windows Server 2003 SP2

Información de versiones

Runtime de F#

Se admite en las versiones: 2.0, 4.0

Silverlight

Se admite en la versión: 3

Vea también

Referencia

Collections.Array (Módulo de F#)

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

Historial de cambios

Fecha

Historial

Motivo

Agosto de 2010

Se ha agregado un ejemplo de código.

Mejora de la información.