写入方法返回List中的第四个元素

时间:2013-09-17 01:56:12

标签: f# functional-programming

我目前正在尝试这个。

let L = [2; 4; 6; 8]

let fourth listx  = List.nth(listx 3);;

fourth L;;

但我希望'a -> 'a(列出清单)而不是int -> 'a

我该如何解决这个问题?

2 个答案:

答案 0 :(得分:4)

你想要像

这样的东西
let fourth listx = List.nth listx 3

这给出了'a list -> 'a的签名,我认为你想要的是什么。关键的区别在于没有括号,在这种情况下不能达到预期的效果

答案 1 :(得分:0)

let fourth x = (fun x -> [x]) (List.nth x 3)
val fourth : x:'a list -> 'a list