Compartilhar via


Função Array.sortWith<'T> (F#)

Classifica os elementos da matriz, usando a função determinada de comparação como a ordem, retornando uma nova matriz.

Namespace/Module Path: Microsoft.FSharp.Collections.Array

Assembly: FSharp.Core (em FSharp.Core.dll)

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

// Usage:
Array.sortWith comparer array

Parâmetros

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

    A função para comparar pares de elementos da matriz.

  • array
    Tipo: 'T[]

    A matriz de entrada.

Valor de retorno

a matriz classificado.

Comentários

Este é um tipo não estável, ou seja, a ordem dos elementos iguais original não seja preservada. Para uma classificação estável, considere usar Seq.sort.

Essa função é chamada SortWith em assemblies compilados. Se você está acessando a função de um idioma diferente F#, ou com a reflexão, use este nome.

Exemplo

O código a seguir mostra o 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"

Saída

  

Plataformas

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

Informações de Versão

Versões da biblioteca principal de F#

Suportado em: 2,0, 4,0, portáteis

Consulte também

Referência

Módulo Collections.Array (F#)

Namespace Microsoft.FSharp.Collections (F#)