scala隐式返回值问题

标签 scala

使用 Scala“2.10.4”,我有一个这样的隐式定义:

implicit class MyImplicits(val s: S) {
  def ==>(relation: W):Option[List[S]] = {
    getRelation(s,relation)
  }
}

当我想使用它时,以下工作正常:

import MyImplicits
val list1 = s ==>(w)
val value = list1.get

但是当我写这个的时候我得到了错误:

import MyImplicits
val value = s ==>(w).get


Error:(56, 67) value get is not a member of MyImplicits
      val value = s ==>(w).get
                            ^

这个错误的原因是什么,有什么办法解决吗?

最佳答案

那是因为它将 get 应用到 (w) 而不是整个表达式。

试试这个:

val value = (s ==>(w)).get

关于scala隐式返回值问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27643253/

相关文章:

java - 转换集合流的内部元素

Scala 编译器无法推断模式匹配的混合类型

scala - 为什么 Scala 中没有字符串插值?

scala - 无法使用 Flink 1.5 集群提交作业

scala - 无法在带有cats库的函数中调用map方法

java - 执行 "max"的功能方法(使用递归/不使用可变变量)

scala - 在 Play 框架中,将数组传递给 View 的语法是什么?

java - Securesocial - 在自定义 View 中获取用户数据

scala - FoldLeft 总和值与 BigDecimal.ZERO 起始值

Scalatest 和 scalamock - 涉及 SuiteMixin 的依赖问题