どのようにエレガントなスカラスタイルでマップから要素を取得できますか? try catchは正しく見えません。 には最適なオプションが含まれていますか?スカラ地図java.util.NoSuchElementException:キーが見つかりませんエレガント
パターンマッチを試行しても例外がキャッチされません。
case class SomeClass(first: Int, second:String)
val someClass = SomeClass(1, "foo")
val myMap = Map("firstKey" -> Map("secondKey" -> someClass))
myMap(("col1"))("XXX") match {
case s:String => s.first
case _ => 0
}
のために理解するために使用することができ、あなたが欲しい:。 'myMap.get( "のfirstKey")flatMap(。_( "secondKey")を取得)倍(0。 ){case s:String => s.length} ' –
これはうまくいくようです。 –