顿搜
飞过闲红千叶,夕岸在哪
类目归类
val a = if(i > 0) 1 else -1在Scala中,最后一行就代表 return, },"{}" 代表代码块
val a = {
if(i > 0){
1
}else{
0
}
}val a = if(i > 0) 1 else "error"此时 a 是 Any 类型, Any 是 Int 和 String 的父类
val a : Any = if (i > 0) 1 else "error"在scala底层,对case进行了优化,它的执行效率要比if-else高
匹配值
num match {
case 1 => println("a")
case 2 => println("b")
case _ => println("default")
}匹配类型
num match {
case x: Int => println(x)
case y: Double if( y > 10) => println("b") # 匹配类型的时候,还可以增加一个判断语句
case z: String => println("c")
}匹配数组
var arr = Array(1,2,4,6)
arr match{
case Array(1,2,x,y) => println(x + " " + y) #只要前面的匹配上,元素个数一样即可匹配匹配集合
val list = List(1, 3, 6) # 0是头, List(3,6) 是它的尾
list match {
case 1 :: a => println(s"0...$a") # 匹配以 1 开头的,并且将尾赋给a