2013-09-28 28 views
10

有相當多的傳統接口以簡單IEnumerable的形式獲取實體的集合。通常,人們會在C#中將foreach(CertainTypeWeSureItemIs item in items)轉換爲任何類型的對象。 IEnumerable不會直接轉換爲序列。用seq { for x in xs -> x }包裝它並不會有太大幫助,因爲它會得到seq{obj}。那麼我如何在F#中做到這一點?如何處理F#中的IEnumerable?

+0

你參觀過的IRC freenode的F#通道?一些本地和小問題可以很好地回答。 –

+0

是的,我想檢查一下。 –

回答

16

使用Seq.cast<T>

let al = new System.Collections.ArrayList() 
al.Add(1) |> ignore 
al.Add(2) |> ignore 
al |> Seq.cast<int> |> Seq.iter(printf "%i")