Arn*_*nab 2 functional-programming scala fold
我想确保我是否可以通过使用reduceLeft而不是foldLeft来实现这一目标.我在列表中搜索给定的数字
val included = List(46, 19, 92).foldLeft(false) { (a, i) =>
| if (a) a else (i == 19)
| }
included: Boolean = true
Run Code Online (Sandbox Code Playgroud)
但是我想用reduceLeft完成同样的工作,是否可能?
正确的方法是
val included = List(46, 19, 92).contains(19)
Run Code Online (Sandbox Code Playgroud)
但如果你坚持使用reduceLeft,那么你可以写:
val included = List(46, 19, 92).reduceLeft { (a, b) =>
if (b == 19) b else a
} == 19
Run Code Online (Sandbox Code Playgroud)