22.scala编程思想笔记——模式匹配
欢迎转载,转载请标明出处:http://blog.csdn.net/notbaron/article/details/50445757
源码下载连接请见第一篇笔记。
计算机编程中很大一部分工作是在进行比较,基于是否匹配某项条件来自行相应的动作。
匹配表达式会将一个值与可能的选项进行匹配。所有匹配表达式都以要比较的值开头,后面跟着match关键字、左花括号和一组可能的匹配项及其相关联的动作,最后以右花括号结尾。
例如:
importcom.atomicscala.AtomicTest._
defmatchColor(color:String):String = {
color match {
case "red" => "RED"
case "blue" =>"BLUE"
case "green" =>"GREEN"
case _ => "UNKNOWN COLOR: " +color
}
}
matchColor("white")is
"UNKNOWN COLOR: white"
matchColor("blue")is "BLUE"
执行如下:
[root@localhost examples]# scala -nocompdaemonMatchExpressions.scala
UNKNOWN COLOR: white
BLUE
其中下划线_ 是一个通配符。
通配符模式总是出现在匹配列表的最后,如果没有使用统配符模式,当视图匹配与所列各种模式都不相同的值时,就会产生错误。