Condividi tramite


Funzione List.reduce<'T> (F#)

Applica una funzione a ogni elemento dell'insieme, eseguendo il threading di un argomento dell'accumulatore attraverso il calcolo. Questa funzione applica prima la funzione ai primi due elementi dell'elenco. Quindi immette il risultato di questa esecuzione nella funzione insieme al terzo elemento e così via. Infine, restituisce il risultato finale. Se la funzione di input è f e gli elementi sono i0...iN, calcola f (... (f i0 i1) i2 ...) iN.

Percorso di spazio dei nomi/modulo: Microsoft.FSharp.Collections.List

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

// Signature:
List.reduce : ('T -> 'T -> 'T) -> 'T list -> 'T

// Usage:
List.reduce reduction list

Parametri

  • reduction
    Tipo: 'T -> 'T -> 'T

    Funzione per ridurre due elementi di elenco a un solo elemento.

  • list
    Tipo: 'T list

    Elenco di input.

Eccezioni

Eccezione

Condizione

ArgumentException

Generata se l'elenco è vuoto.

Valore restituito

Valore ridotto finale.

Note

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

Esempio

Nell'esempio di codice seguente viene illustrato l'utilizzo di List.reduce.

let sumAList list =
    try
        List.reduce (fun acc elem -> acc + elem) list
    with
       | :? System.ArgumentException as exc -> 0

let resultSum = sumAList [2; 4; 10]
printfn "%d " resultSum

Output

  

Piattaforme

Windows 7, Windows Vista SP2, Windows XP SP3, Windows XP x64 SP2, Windows Server 2008 R2, Windows Server 2008 SP2, Windows Server 2003 SP2.

Informazioni sulla versione

F# Runtime

Supportato in: 2.0, 4.0

Silverlight

Supportato in: 3

Vedere anche

Riferimenti

Modulo Collections.List (F#)

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

Cronologia delle modifiche

Data

Cronologia

Motivo

Maggio 2010

Aggiunto esempio di codice.

Miglioramento delle informazioni.