C# 列表和 F# 列表之间的转换 [英] Converting between C# List and F# List

查看:16
本文介绍了C# 列表和 F# 列表之间的转换的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

备注:这是一个自我文档,但如果您有任何其他建议,或者如果我犯了任何错误/遗漏了一些明显的东西,我将非常感谢您的帮助.

Remark: This is a self-documentation, but if you have any other suggestions, or if I made any mistakes/miss out something obvious, I would really appreciate your help.

来源:

将 .NET 通用列表转换为 F# 列表

我能做什么如何将列表从 C# 传递到 F#?

https://msdn.microsoft.com/en-us/library/4kf43ys3(v=vs.110).aspx?cs-save-lang=1&cs-lang=fsharp#code-snippet-1

我是 F# 和 C# 的初学者,我想将 C# 列表转换为 F# 列表,反之亦然.执行此操作的代码/命令会根据您的代码(在 C# 或 F# 中)的位置而变化.

I am a beginner in F# and C#, and I want to convert a C# List to an F# List, and vice versa. The code/commands for doing so changes depending on where is your code (in C# or F#).

请看下面我的回答.如果您有任何其他建议,请告诉我.谢谢.

Please see my answer below. If you have any other suggestions, please let me know. Thank you.

推荐答案

在C#文档里面,我可以使用ListModule.OfSeq.ToList(),像这样:

Inside a C# document, I can use ListModule.OfSeq and .ToList(), like this:

// Currently inside a C# document
var CS_list = new List<int> {1,2,3}; 
var FS_list = ListModule.OfSeq(CS_List); // Microsoft.FSharp.Collections.ListModule
var CS_converted_back = FS_List.ToList();

在 F# 文档中,我可以使用 Seq.toListResizeArray<_>,如下所示:

Inside an F# document, I can use Seq.toList and ResizeArray<_>, like this:

// Currently inside an F# document
let FS_list = [1;2;3]
let CS_list = ResizeArray<int> FS_list // System.Collections.Generic.List
let FS_converted_back = Seq.toList CS_list

如果我犯了任何错误,或者遗漏了一些明显的东西,请告诉我.

If I made any mistakes, or if I miss out something obvious, please let me know.

这篇关于C# 列表和 F# 列表之间的转换的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆