import scala.io.StdIn
object t23 {
def main(args: Array[String]): Unit = {
//从控制台读入一个数字a
// 如果a>=0并且a<=3打印"[0-3]
// 如果a>=4并且a<=8打印"[4-8]
// 否则,打印未匹配
// val a = StdIn.readInt()
// println(s"从键盘输入的数字是:$a")
// a match {
// case x if x>=0 && x<=3 => println("[0-3]") //if x>=0 && x<=3 守卫语句
// case x if x>=4 && x<=8 => println("[4-8]")
// case _ => println("未匹配")
// }
//在2000-2040年,如果年份是闰年,就输出“是闰年”,否则输出“不是闰年”
// for(i <- 2000 to 2040){
// i match {
// case year if (year % 4 == 0)&&(year % 100 != 0) => println(s"${year}是闰年")
// case year if (year % 400 == 0) => println(s"${year}是闰年")
// case _ => println(s"${i}不是闰年")
// }
// }
//匹配类型
// val i:Int = 1
// val b:Boolean = false
// //Any 任意的
val x:Any = "abc"
// //定义一个变量x,类型无所谓
// val x:Any = b
// x match {
// case _:Int => println(s"$x 是Int 类型的") //_:Int 表示变量是Int类型的
// case _:Boolean => println(s"$x 是Boolean 类型的")
// case _ => println("其他")
// }
// //匹配数组
// val arr1 = Array(1,3,4)
// val arr2 = Array(1,6,7)
// val arr3 = Array(0,1,6,7,3)
//
// val arr = Array(1)
// arr match {
// case Array(0) => println("1个元素,且第一个为0")
// case Array(1,x,y) => println(s"3个元素,且第一个为1,第二个是${x},第三个是${y}")
// case Array(1,_*) => println("n个元素,且第一个为1")
// case _ => println("其他")
// }
// //匹配case class
// case class Stu(name:String)
// case class Teacher(name:String,subject:String)
// val s1 = Stu("小花")
// val t1 = Teacher("小明","体育")
//
// val x:Any = "x"
// x match {
// case Stu(a) => println(s"学生${a}")
// //属性的个数要对应上
// case Teacher(a,b) => println(s"${b}老师 ${a}")
// case _ => println("其他")
// }
// //定义变量赋值
// var arr = Array(1,2,3,4,7)
// //定义三个变量,分别保存数组中的第一个,第二个,第三个元素
var x = arr(0)
var y = arr(1)
var z = arr(2)
var Array(x,y,z,_) = arr
// var Array(x,y,_,z,_*) = arr
// println(s"x = $x,y = $y,z = $z")
//匹配for循环
//从 Map 中打印所有年龄为1971的创业者的信息。
val m1 = Map(
"马云﹣阿里巴巴" -> 1964,
"马化腾﹣腾讯" -> 1971,
"李彦宏-百度" -> 1968,
"雷军-小米" -> 1969,
"丁磊﹣网易" -> 1971,
"张一鸣-抖音" -> 1983,
"刘强东-京东" -> 1974,
"程维-滴滴" -> 1983,
"王兴﹣美团" -> 1979,
"周鸿祎﹣360" -> 1970,
"黄峥﹣拼多多" -> 1980,
"李想-理想汽车" -> 1981,
"何小鹏-小鹏汽车" -> 1977,
"贾跃亭-乐视" -> 1973,
"陈天桥﹣盛大网络" -> 1973,
"周源-知乎" -> 1980,
"张小龙-微信" -> 1969,
"王小川﹣搜狗" -> 1978
)
for((k,v) <- m1 if(v == 1971)){
println(k,v)
}
println("-"*40)
for ((k, 1971) <- m1) {
println(k, 1971)
}
}
}