trait Option[T] {
def isDefined: Boolean
def get: T
def getOrElse(t: T): T
}
Option接口有两个子类:Some[T]和None
Map的get方法返回的就是Option接口
scala> val map1 = Map("one" -> 1, "two" -> 2)
map1: scala.collection.immutable.Map[String,Int] = Map(one -> 1, two -> 2)
scala> map1.get("one")
res5: Option[Int] = Some(1)
scala> map1.get("three")
res7: Option[Int] = None
配合模式匹配使用
val map1 = Map("one" -> 1, "two" -> 2)
val res1 = map1.get("three")
val res2 = res1 match {
case Some(n) => n+1
case None => 0
}