我有一个Map,其类型为:
Map[String, Option[SomeType]]
我想知道这个Map中是否有任何元素包含None作为值。我不想收集元素,但我只想得到一个布尔值为真或假!
不确定这是否正确:
val isNoneExists = myMap.exists {
case (_, optionalElem) => optionalElem match {
case Some(elem) => false
case None => true
}
}
你可以这样做:
scala> val m = Map("foo" -> Some(10), "boo" -> None)
scala> m.values.exists(_ == None)
res21: Boolean = true