1

Map如果我知道它存在,我怎样才能惯用地获得一个键的值?

scala> val m = Map(1 -> "hi", 2 -> "world")
m: scala.collection.immutable.Map[Int,String] = Map(1 -> hi, 2 -> world)

scala> if (m.contains(1)) println(m.get(1) )
Some(hi)

有没有更惯用的替代方法m.get(1).get.get

scala> if (m.contains(1)) println(m.get(1).get )
hi
4

1 回答 1

4

斯卡拉Mapapply方法:

scala> m.apply(1)
res1: String = hi

或使用语法糖:

scala> m(1)
res0: String = hi

但更惯用的方法是迭代Option

scala> m.get(1) foreach println
hi
于 2013-11-14T04:14:00.597 回答