我在课程中遵循"Scala中的函数式编程原理",在第二周,作业是关于"纯函数集"的,我们有,
type Set = Int => Boolean
Run Code Online (Sandbox Code Playgroud)
然后是一些功能
def union(s: Set, t: Set): Set = (element: Int) => s(element) || t(element)
Run Code Online (Sandbox Code Playgroud)
所以,当我这样做的时候,
val u = union(Set(1, 2, 3), Set(4, 5, 6))
Run Code Online (Sandbox Code Playgroud)
在scala控制台中,它给出了
u: Set = <\function1\>
Run Code Online (Sandbox Code Playgroud)
a)为什么它会返回一个函数?
b)当我这样做时contains(u, 6)它返回true但是我可以显示你的所有元素还是因为你是一个我不能的函数?
c)如何union(Set(1, 2, 3), Set(4, 5, 6))在没有任何迭代的情况下返回这两个集合中的所有元素?