List.reduce<'T> 関数 (F#)

計算にアキュムレータ引数を使用しながら、コレクションの各要素に関数を適用します。この関数は、まずリストの最初の 2 つの要素に関数を適用します。次に、この結果を 3 番目の要素と共に関数に渡します。それ以降も同様に繰り返します。最後に、最終結果を返します。入力関数が f で、要素が i0...iN の場合は、f (... (f i0 i1) i2 ...) iN を計算します。

名前空間/モジュール パス: Microsoft.FSharp.Collections.List

アセンブリ: FSharp.Core (FSharp.Core.dll 内)

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

// Usage:
List.reduce reduction list

パラメーター

  • reduction
    型: 'T -> 'T -> 'T

    2 つのリスト要素を 1 つの要素に減らす関数。

  • list
    型: 'T list

    入力リスト。

例外

例外

状態

ArgumentException

リストが空の場合にスローされます。

戻り値

減らされた最終的な値。

解説

この関数は、コンパイルされたアセンブリでは Reduce という名前です。F# 以外の言語から、またはリフレクションを使用してこの関数にアクセスする場合は、この名前を使用します。

使用例

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

出力

  16

プラットフォーム

Windows 8、Windows 7、Windows Server 2012 で Windows Server 2008 R2

バージョン情報

F# コア ライブラリのバージョン

サポート: ポータブル 2.0、4.0

参照

関連項目

Collections.List モジュール (F#)

Microsoft.FSharp.Collections 名前空間 (F#)