【发布时间】:2016-01-24 01:31:15
【问题描述】:
我正在尝试编写一个函数,该函数接受一个列表和一个要在该列表中查找的元素,如果元素在列表中则返回 true,否则返回 false。我想使用 List.Fold 使功能更短。现在看起来是这样的
let isInList(elementToFind, listToCheck) =
List.fold(fun(a, b) -> a=elementToFind or b), false, listToCheck;
但是,我在 a=elementToFind 或 b 处遇到语法错误,表示该表达式应具有 'a -> 'b * 'c 但具有布尔值。总的来说,我对 F# 和函数式编程还是很陌生,因此我将不胜感激。
【问题讨论】:
标签: lambda f# functional-programming