是否有任何等同于以下的选项功能:
def callIfNotEmpty[T](option: Option[T], fun: (T) => Unit): Unit = option match {
case Some(x) => fun(x)
case None =>
}
可以称为:
option.callIfNotEmpty((optionValue) => fun(optionValue))
答案 0 :(得分:9)
尝试使用foreach
。例如:
option.foreach(println)
来自docs:
final def foreach[U](f: (A) ⇒ U): Unit
将给定的过程
f
应用于选项的值,如果它是非空的。
Option
代码的顶部甚至还有评论:
使用
scala.Option
实例的最惯用方法是将其视为集合或monad,并使用map
,flatMap
,filter
或{{1} }
回想一下,foreach
可以隐式转换为Option
,因此您可以使用通常收藏的任何内容!