如何在F#中声明一个对象数组?

时间:2015-05-09 20:44:11

标签: .net f#

我在C#中声明了一个数组:

object[] objects = { "myString", 12, 2.06, null, "otherString" };

现在我想在F#中声明一个类似的数组,所以我尝试:

let objects = ["myString"; 12; 2.06; null; "otherString"]

但是这给了我编译错误:

“这个表达式应该有类型字符串,但这里有类型int”

“此表达式应具有类型字符串,但此处具有类型float”

表示值12和2.06。

我应如何继续在F#中创建类似的数组?

1 个答案:

答案 0 :(得分:3)

在您的代码中,您要声明一个列表:

let objects : obj list = ["myString"; 12; 2.06; null; "otherString"]

数组将是:

let objects : obj[] = [|"myString"; 12; 2.06; null; "otherString"|]

只需向其中任何一个添加类型注释:obj list: obj[],否则F#会从第一个元素中推断出类型。