Scala高级特性一:模式匹配
- Scala模式匹配类似于Java的switchcase,但是更加强大,甚至可以匹配变量类型、集合元素、有值没值
语法格式为:变量 match { case值 => 代码 } ```scala 首先如何匹配变量类型 def whichtype(A: type){ //匹配变量类型是否是type1、type2、type3 A match{
case a:type1 => ...
case b:type2 => … case _:type => …
} }
如何匹配有值没值 def isNull(A :type){ A match{ case None : … case _ : …. } }
---<a name="ZwKrs"></a>## Scala高级特性二:隐式转换- **Scala可以在class或者object中定义隐式转换函数,定义后的对应的实例在需要时会自动转换成另一个类型的实例**```scala//例如让狗抓老鼠class cat(val name:String){def catmouse(){...} //抓老鼠是cat类的函数}Object dog(val name:String){implicit def dogtocat(d : dog) = new Cat()new dog().catmouse() //因为设置了dogtocat隐式转换函数,所以会自动转换成cat并调用抓老鼠方法}
