我在Scala中使用
创建了一个二维数组val arr = Array(Array())
我想用Option安全提取它。我想使用通配符,但这有效:
def get(x:Int, y: Int) = arr lift x flatMap { _ lift y map { a=>a } }
这不是
def get(x:Int, y: Int) = arr lift x flatMap { _ lift y map { _ } }
任何人都可以向我解释有什么区别吗?
答案 0 :(得分:1)
_
本身不会扩展为x => x
或identity
您可能想要使用的是identity
predef:
def get(x: Int, y: Int) = arr lift x flatMap { _ lift y map {identity} }
请参阅Scala Language Specification部分6.23.1。