嗨,我得到這個醜陋的東西:我該如何將這個醜陋的一個班輪轉換成一個乾淨的斯卡拉來理解?
val test = Some(Map("TesT",123))
val keys = test.getOrElse(Map()).keys.map(_.toLowerCase).asInstanceOf[Set[String]]
require(keys.contains("test")
我可以把它(線#2)到一個乾淨的/可讀的理解?
這裏是我的嘗試:
scala> val keys = for {
| map <- test
| keys <- map.keys
| k <- keys
| } yield k.toLowerCase
<console>:18: error: value toLowerCase is not a member of Char
} yield k.toLowerCase
^
<console>:16: error: type mismatch;
found : Iterable[Char]
required: Option[?]
keys <- map.keys
^
「醜陋」的一個班輪在哪裏?另外...爲此目的'test.getOrElse(Map())。contains(「test」)'是一種更好的選擇。 –