如果我知道密钥的存在,我该怎样才能获得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
答案 0 :(得分:4)
scala Map
有apply
方法:
scala> m.apply(1)
res1: String = hi
或使用语法糖:
scala> m(1)
res0: String = hi
但更惯用的方法是迭代Option
:
scala> m.get(1) foreach println
hi