[scala--基础]--类型匹配

时间:2023-01-11 23:13:10
一、由于scala是动静态结合语言,既可以面向对象编程,又可以面向函数编程。在运行时决定数据类型,所以经常在类型匹配中使用Some来匹配类型。如果不添加Some匹配,会导致结果不是我们想要的。


1、比如有Map集合
val strMap=("123"->"tom","456"->"sina")


2、现在想要通过key获取value:
val value=strMap.get("123")

(1)如果有值,那么结果是? (Some(tom))
(2)如果没匹配到值,那么结果是?(None)


3、所以需要类型匹配处理,使得结果是我们需要的,如下:

value match {
        case Some(res)=>res  //如果有值,返回类型相匹配的值
        case None=>"没有值"       //如果没有值,则返回用户自定义的值
      }