相关疑难解决方法(0)

我对下面的scala代码的理解是否正确?

我只是想了解下面的代码:


这里声明了一个新类型别名Set,它是一个接受Int参数并返回布尔值的函数

type Set = Int => Boolean
Run Code Online (Sandbox Code Playgroud)

这里声明了一个新方法'contains',它接受一个类型为Set和Int的参数,它返回一个布尔值.boolean设置为前面声明的函数('type Set = Int => Boolean')但是执行了什么逻辑来确定Int'elem'是否是Set's'的成员

def contains(set: Set, elem: Int): Boolean = set(elem)
Run Code Online (Sandbox Code Playgroud)

这里定义了一个方法,它返回一个返回函数的集合?

def singletonSet(elem: Int): Set = set => set == elem
Run Code Online (Sandbox Code Playgroud)

带注释的完整代码:

  /**
   * We represent a set by its characteristic function, i.e.
   * its `contains` predicate.
   */
  type Set = Int => Boolean

      /**
       * Indicates whether a set contains a given element.
       */
def contains(set: Set, elem: Int): Boolean = set(elem)

      /**
       * Returns the set …
Run Code Online (Sandbox Code Playgroud)

scala

34
推荐指数
2
解决办法
1万
查看次数

标签 统计

scala ×1