我想编写一个算法,该算法匹配Scala中具有两个值的列表.
例如,如果我有以下列表:
val list = List(1, 3, 6, 8, 9, 14, 18)
Run Code Online (Sandbox Code Playgroud)
并有这两个值:
val a = 4
val b = 14
Run Code Online (Sandbox Code Playgroud)
我想得到这个清单:
val result = List(6, 8, 9, 14)
Run Code Online (Sandbox Code Playgroud)
如果考虑使用intersectScala 的方法,但只适用于两个列表.
我也考虑过使用for循环,但这不起作用.
所以我最终不知道如何解决这个问题.
谁能帮我?
我从Scala开始,现在我在讨论高阶函数,但是我很难用函数作为输入来处理这种编程方式.
我必须使用fold,scan和/或reduce来编写一个更高阶的函数来连接一个字符串,如下所示:
concatenate(List("S", "T", "R", " example!") , f)
//> res1: List[String] = List(STR example!, TR example!, R example!, " example!", "")
Run Code Online (Sandbox Code Playgroud)
有谁知道我怎么能解决这个问题?