Freigeben über


List.reduce<'T>-Funktion (F#)

Wendet eine Funktion auf jedes Element der Auflistung an, wobei ein Akkumulatorargument in der Berechnung mitgeführt wird. Diese Funktion wendet zuerst die Funktion auf die ersten beiden Elemente der Liste an. Anschließend wird dieses Ergebnis zusammen mit dem dritten Element usw. an die Funktion übergeben. Abschließend wird das Endergebnis zurückgegeben. Ist die Eingabefunktion f und sind die Elemente i0...iN, wird von f (... (f i0 i1) i2 ...) iN berechnet.

Namespace/Modulpfad: 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

Parameter

  • reduction
    Typ: 'T -> 'T -> 'T

    Die Funktion zur Verringerung von zwei Listenelementen auf ein einzelnes Element.

  • list
    Typ: 'T list

    Die Eingabeliste.

Ausnahmen

Ausnahme

Bedingung

ArgumentException

Wird ausgelöst, wenn die Liste leer ist.

Rückgabewert

Der verringerte Endwert.

Hinweise

Der Name dieser Funktion in kompilierten Assemblys lautet Reduce. Verwenden Sie diesen Namen, wenn Sie in einer anderen .NET-Sprache als F# oder durch Reflektion auf die Funktion zugreifen.

Beispiel

Das folgende Codebeispiel veranschaulicht die Verwendung von 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

  

Plattformen

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

Versionsinformationen

F#-Runtime

Unterstützt in: 2.0, 4.0

Silverlight

Unterstützt in: 3

Siehe auch

Weitere Ressourcen

Collections.List-Modul (F#)

Microsoft.FSharp.Collections-Namespace (F#)

Änderungsprotokoll

Datum

Versionsgeschichte

Grund

Mai 2010

Codebeispiel hinzugefügt.

Informationsergänzung.