我实际上是在Scala中运行此代码
val obj2 = obj1.method1()
val result = obj2.method2(obj2.name)
我知道是否有可能在连接调用的参数中使用obj2,以澄清我会写类似
val result = obj1.method1().method2(_.name)
其中_表示先前计算的对象。 我不知道它是否可能,它只是一个风格问题,第一个代码工作正常
答案 0 :(得分:3)
我们可以这样做(从http://combinators.info/借用into
名称):
implicit class Into[A](x: A) {
def into(f: A => B) = f(x)
}
obj1.method1().into { x => x.method2(x.name) }