1、其功能类似于Java switch,功能要强大于java, 可以对数据值和数据类型进行匹配
2、语法
变量 match{
case 可能性1 => 操作1
case可能性2 => 操作2
……
case _ => 默认操作
}
示例代码
package day3 object demo_match { def main(args: Array[String]): Unit = { var sin = 2 val ch = 'd' ch match { case '-' => sin -= 2 case '+' => sin += 2 case '/' => sin /= 2 case _ => println("请输入正确的符号") } println(sin) } }
别一种简洁的写法: 守卫
package day3 import scala.io.StdIn object demo_match { def main(args: Array[String]): Unit = { var sin = 2 val ch = StdIn.readChar() sin = ch match { // case匹配结果直接赋值给变量的用法叫: 守卫 case '-' => 1 case '+' => 2 case '/' => 3 case _ => 0 } println(sin) } }