Condividi tramite


Funzione Seq.countBy<'T,'Key> (F#)

Applica una funzione di generazione chiavi a ogni elemento di una sequenza e restituisce una sequenza che crea chiavi univoche e il relativo numero di occorrenze nella sequenza originale.

Percorso spazio dei nomi/modulo: Microsoft.FSharp.Collections.Seq

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

// Signature: Seq.countBy : ('T -> 'Key) -> seq<'T> -> seq<'Key * int> (requires equality)  // Usage: Seq.countBy projection source

Parametri

  • projection
    Tipo: 'T -> 'Key

    Funzione che trasforma ogni elemento di una sequenza di input in una chiave da confrontare con le altre.

  • source
    Tipo: seq<'T>

    Sequenza di input.

Eccezioni

Eccezione

Condizione

ArgumentNullException

Generata quando la sequenza di input è Null.

Valore restituito

Sequenza di chiavi univoche e relativo numero di occorrenze nella sequenza originale.

Note

Questa funzione restituisce una sequenza che attraversa l'intera sequenza iniziale non appena tale sequenza viene iterata. Di conseguenza questa funzione non deve essere usata con sequenze di grandi dimensioni o infinite. La funzione non presume alcun ordine della sequenza originale.

Questa funzione è denominata CountBy negli assembly compilati. Usare questo nome se si accede alla funzione da un linguaggio diverso da F# o tramite reflection.

Esempio

L'esempio seguente illustra l'uso di Seq.countBy per determinare il numero di elementi pari o dispari in una sequenza.

let mySeq1 = seq { 1.. 100 }
let printSeq seq1 = Seq.iter (printf "%A ") seq1; printfn "" 
let seqResult = Seq.countBy (fun elem ->
    if (elem % 2 = 0) then 0 else 1) mySeq1

printSeq seqResult
  

Piattaforme

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

Informazioni sulla versione

Versioni della libreria di base F#

Supportata in: 2.0, 4.0, portabile

Vedere anche

Riferimenti

Modulo Collections.Seq (F#)

Spazio dei nomi Microsoft.FSharp.Collections (F#)