Array.fold2<'T1,'T2,'State> – funkce (F#)
Použije funkci dvojice prvků z dvě kolekce zleva doprava, threading argument akumulátorové prostřednictvím výpočtu.Dvě vstupní pole musí mít stejné délky, jinak ArgumentException je aktivována.
Cesta k oboru názvů nebo modul: Microsoft.FSharp.Collections.Array
Sestavení: FSharp.Core (v FSharp.Core.dll)
// Signature:
Array.fold2 : ('State -> 'T1 -> 'T2 -> 'State) -> 'State -> 'T1 [] -> 'T2 [] -> 'State
// Usage:
Array.fold2 folder state array1 array2
Parametry
folder
Typ:'State -> 'T1 -> 'T2 -> 'StateFunkce Aktualizovat stav dané vstupní prvky.
state
Typ:'StatePočáteční stav.
array1
Type: 'T1[]První vstupní pole.
array2
Type: 'T2[]Druhý vstupní pole.
Výjimky
Výjimka |
Podmínka |
---|---|
Vyvolána při vstupní pole délky se liší. |
Vrácená hodnota
Konečný stav.
Poznámky
Tato funkce se nazývá Fold2 v kompilovaný sestavení.Pokud přistupujete k funkci jazyka než F# nebo prostřednictvím reflexe, tento název použijte.
Příklad
Následující kód ukazuje způsob použití Array.fold2.
// Use Array.fold2 to perform computations over two arrays (of equal size)
// at the same time.
// Example: Add the greater element at each array position.
let sumGreatest array1 array2 =
Array.fold2 (fun acc elem1 elem2 ->
acc + max elem1 elem2) 0 array1 array2
let sum = sumGreatest [| 1; 2; 3 |] [| 3; 2; 1 |]
printfn "The sum of the greater of each pair of elements in the two arrays is %d." sum
Výsledek
Platformy
Windows 8, Windows 7, Windows Server 2012 Windows Server 2008 R2
Informace o verzi
F# základní verze knihovny
Podporovány: 2.0, 4.0, přenosné