Aracılığıyla paylaş


List.scan<'T,'State> İşlevi (F#)

İşlevi koleksiyonun her öğesine accumulator bağımsız değişken hesaplama iş parçacığı ile uygular. Bu işlev ikinci bağımsız değişken alır ve onu ve ilk öğe listesinin işlevi uygulanır. Daha sonra ikinci öğe vb. ile birlikte işlevi içine bu sonuç geçirir. Son olarak, ara sonuçları ve Nihai sonuç listesini döndürür.

Ad alanı/modül yolu: Microsoft.FSharp.Collections.List

Derleme: FSharp.Core (FSharp.Core.dll içinde)

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

// Usage:
List.scan folder state list

Parametreler

  • folder
    Aşağıdakini yazın: 'State -> 'T -> 'State

    Verilen giriş öğeleri ile durumu güncellemek için işlev.

  • state
    Tür: 'State

    Başlangıç durumu.

  • list
    Aşağıdakini yazın: 'T Liste

    Giriş listesi.

Dönüş Değeri

Durumların listesi.

Açıklamalar

Bu işlev adlı Scan derlenmiş derlemeleri. İşlevin erişiyorsanız bir.f # dışında veya yansıtma üzerinden dil net, bu adı kullanın.

Örnek

Aşağıdaki kod nasıl kullanılacağını gösterir List.scan.

let initialBalance = 1122.73
let transactions = [ -100.00; +450.34; -62.34; -127.00; -13.50; -12.92 ]
let balances =
    List.scan (fun balance transactionAmount -> balance + transactionAmount)
              initialBalance transactions
printfn "Initial balance:\n $%10.2f" initialBalance
printfn "Transaction   Balance"
for i in 0 .. List.length transactions - 1 do
    printfn "$%10.2f $%10.2f" transactions.[i] balances.[i]
printfn "Final balance:\n $%10.2f" balances.[ List.length balances - 1]

Çıktı

  

Platformlar

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

Sürüm Bilgisi

F# Çalışma Zamanı

Desteklenir: 2.0, 4.0

Silverlight

Desteklenir: 3

Ayrıca bkz.

Başvuru

Collections.List Modülü (F#)

Microsoft.FSharp.Collections İsim Uzayı (F#)

Değişiklik Geçmişi

Tarih

Geçmiş

Nedeni

Ağustos 2010

Eklenen kod örneği.

Bilgi geliştirme.