我正在移植CTP 1.9.6.8中的一些旧F#代码
代码使用List.first
:
List.first (fun x -> if x.Date = d then Some(x) else None)
List.first
已被弃用。用于实现相同功能的当前方法是什么。
我查看了发行说明,但未找到任何具体的变更参考。
非常感谢任何帮助。
答案 0 :(得分:7)
尝试List.pick
List.pick (fun x -> if x.Date = d then Some(x) else None)
答案 1 :(得分:3)
@JaredPar是对的。
请注意,F#库文档位于:
http://msdn.microsoft.com/en-us/library/ee353567(VS.100).aspx
具体来说,List模块在这里:
http://msdn.microsoft.com/en-us/library/ee353738(VS.100).aspx
并在该页面上搜索“第一个”显示了通常的嫌疑人。
答案 2 :(得分:1)
@JaredPar对List.pick
的建议是正确的,但如果该元素不存在则会引发KeyNotFoundException
。
你可以使用
List.tryPick
如果您希望在两种情况下都找到option
,则找到并找不到。
它的用法是相同的:
List.tryPick (fun x -> if x.Date = d then Some(x) else None)