Freigeben über


Seq.average<^T>-Funktion (F#)

Aktualisiert: August 2010

Gibt den Durchschnitt der Elemente in der Sequenz zurück.

Namespace/Modulpfad: Microsoft.FSharp.Collections.Seq

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

// Signature:
Seq.average : seq<^T> -> ^T (requires ^T with static member (+) and ^T with static member DivideByInt and ^T with static member Zero)

// Usage:
Seq.average source

Parameter

  • source
    Typ: seq<^T>

    Die Eingabesequenz.

Ausnahmen

Ausnahme

Bedingung

ArgumentException

Wird ausgelöst, wenn die Eingabesequenz 0 (null) Elemente aufweist.

ArgumentNullException

Wird ausgelöst, wenn die Eingabesequenz NULL ist.

Rückgabewert

Die Ergebnissequenz.

Hinweise

Der Durchschnitt der Elemente wird mit dem +-Operator, der DivideByInt-Methode und der Zero-Eigenschaft für den Elementtyp ermittelt.

Diese Funktion kann nicht direkt für eine Sequenz von ganzen Zahlen verwendet werden, da sie erfordert, dass die Typen den Vorgang einer exakten Division unterstützen. Dies wird durch die Einschränkung angegeben, dass der Elementtyp DivideByInt unterstützen muss.

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

Beispiel

Im folgenden Codebeispiel wird die Verwendung von Seq.average veranschaulicht. Außerdem wird Seq.average mit Seq.averageBy verglichen.

// You can use Seq.average to average elements of a list, array, or sequence.
let average1 = Seq.average [ 1.0 .. 10.0 ]
printfn "Average: %f" average1
// To average a sequence of integers, use Seq.averageBy to convert to float.
let average2 = Seq.averageBy (fun elem -> float elem) (seq { 1 .. 10 })
printfn "Average: %f" average2

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.Seq-Modul (F#)

Microsoft.FSharp.Collections-Namespace (F#)

Änderungsprotokoll

Datum

Versionsgeschichte

Grund

August 2010

Codebeispiel hinzugefügt.

Informationsergänzung.