42

是否有将 .NET List<> 转换为 F# 列表的内置方法?

4

2 回答 2

56

List.ofSeq在命名空间中尝试Microsoft.FSharp.Collections

#                     List.ofSeq : seq<'T> -> 'T list

它不是专门针对 的System.Collections.Generic.List<T>,而是针对IEnumerable<T>seq<'T>在 F# 中)一般类型的,所以它应该仍然可以工作。

(它也没有严格内置在 F# 语言中,但也没有List<T>内置到 C# 或 VB.NET 中。这些都是各自标准库的一部分。)

于 2010-06-23T20:19:44.933 回答
12

鉴于IEnumerable<T> foo您将执行以下操作(在 C# 中)以获得 F# list<T>

 var fsharpList = ListModule.OfSeq(foo);

ListModuleMicrosoft.FSharp.Collections.ListModule,并且List在 F# 本身中被指代。

于 2014-11-10T00:46:09.130 回答