目前我使用以下代码片段:
private val aMap = Map(
"J" -> Journey,
"T" -> Training
)
def partialFunction = {
case x if aMap isDefinedAt x => aMap(x)
}
在我看来,地图自然应该定义一个部分功能。 Scala是否有任何标准/更简洁明确的方法将地图转换为部分功能?也许某种隐式转换?
答案 0 :(得分:15)
Scala Map
实际上 是PartialFunction
;你可以这样使用它。无需转换,隐式或显式。
例如:
val pf: PartialFunction[Int, String] = Map(1 -> "one")