case_match

//箭头符号 => 隔开了模式和表达式。
//选择器 match {备选项}。
//只要发现有一个匹配的case,剩下的case不会继续匹配。

//object case_test {
//
// def main(args:Array[String]): Unit ={
// println(matchTest(3))
// }
// def matchTest(x:Int):String=x match{
// case 1 =>"one"
// case 2 =>"two"
// case _ =>"many"
// }
//}


//object case_test {
//
// def main(args:Array[String]): Unit ={
// println(matchTest("two"))
// println(matchTest("test"))
// println(matchTest(1))
// println(matchTest(6))
// }
// def matchTest(x:Any):Any=x match{
// case 1 =>"one"
// case "two" =>2
// case y:Int =>"scala.int"
// case _ =>"many"
// }
//}

//样例类
object case_test {
def main(args:Array[String]): Unit ={
val alice=new Person("alice",25)
val bob=new Person("bob",32)
val charlie=new Person("charlie",32)
for (person<-List(alice,bob,charlie)){
person match{
case Person("alice",25)=>println("alice")
case Person("bob",32)=>println("bob")
case Person(name,age)=>println("age"+age+"name"+name)
}
}
}

case class Person(name:String,age:Int)
}

posted on 2019-09-18 18:02  happygril3  阅读(193)  评论(0)    收藏  举报

导航