Scala嵌套通配符占位符

时间:2014-11-18 18:52:42

标签: scala

我在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 { _ } }

任何人都可以向我解释有什么区别吗?

1 个答案:

答案 0 :(得分:1)

_本身不会扩展为x => xidentity

您可能想要使用的是identity predef:

def get(x: Int, y: Int) = arr lift x flatMap { _ lift y map {identity} }

请参阅Scala Language Specification部分6.23.1。