这份清单的答案是什么?

时间:2012-11-20 12:47:12

标签: list f#

3::[4;5;2;7];;
List.length [4;5;2;7];;
[4;5;2;7]::3;;

这给出了错误这个表达式应该具有类型int列表列表,但这里有类型int

我知道可以通过执行以下操作来解决:[4;5;2;7];; List.append it [3];;但还有其他方法吗?

1 个答案:

答案 0 :(得分:0)

这是一个非常糟糕的问题。但是,代码中的最后一行将失败并显示

  

预计此表达式具有类型       int list list但这里有类型       INT

..因为::将元素连接到列表。它只能从前面执行,因为列表是单链表。如果要在列表末尾添加元素,则可能使用了错误的数据结构。如果你真的想在列表的末尾添加一个元素,你可以这样做

[4;5;2;7] @ [3];;

请注意,这将是非常低效的。