守卫

35 阅读1分钟
//知识点:守卫
// value match{
//    case 模式 if  条件 => 执行的事情}
object class9 {
  def main(args: Array[String]): Unit = {
    val a =11

    a match {
      case x: Int if a > 10 => println("a 是大于10的Int")
      case _ => println("a is not Int")
    }
  }

}
object class10 {
  def getZodiac(month: Int, day: Int): String ={
    month match {
      case 1 if day >= 20 => "水瓶座"
      case 2 if day <= 18 => "水瓶座"
      case 3 if day >= 21 => "白羊座"
      case 4 if day <= 19 => "白羊座"
      case 5 if day >= 21 => "金牛座"
      case 6 if day <= 20 => "金牛座"
      case 7 if day >= 23 => "巨蟹座"
      case 8 if day <= 22 => "巨蟹座"
      case 9 if day >= 23 => "狮子座"
      case 10 if day <= 22 => "狮子座"
      case 11 if day >= 23 => "处女座"
      case 12 if day <= 21 => "处女座"
      case 12 if day >= 22 => "摩羯座"
      case 1 if day <= 19 => "摩羯座"
      case _ => "未知"
    }
  }

  def main(args: Array[String]): Unit = {
    println(getZodiac(1,19))
    println(getZodiac(1,21))
  }

}