scala的守卫语句格式

Scala 复制代码
import scala.io.StdIn
object test49{
  //从控制台读入一个数字a,使用(StdIn.readInt)
  //如果a>=0并且a<=3,打印[0-3]
  //如果a>=4并且a<=8,打印[4-8]
  //否则:打印未匹配
//  def main(args: Array[String]): Unit = {
//    val a=StdIn.readInt()//等待从键盘输入内容
//    println(s"从键盘输入的数字是:$a")
//    a match {
//             //条件守卫的case
//      case x if x>=0 && x<=3 => println(s"[0-3]")
//      case y if y>=4 && y<=8 => println(s"[4-8]")
//      case _ =>println("其他")
//    }
//  }


//  def main(args: Array[String]): Unit = {
//    for (i<-2000 to 2040)
//      i match {
//        case year if (year%4==0) &&(year%100!=0)||(year%400==0)=>println(s"${year}是闰年")
//        case _=>println(s"${i}不是闰年")
//      }
//  }


//  //匹配类型
//  def main(args: Array[String]): Unit = {
//    val i:Int=1
//    val b:Boolean=false
//
//    //Any 任意的
//    //val x:Any="abc"
//   // val x:Any=i
//    //定义一个变量x,类型无所谓
//    val x:Any=b
//
//    x match {
//      case _:Int =>println(s"$x 是Int 类型的")//_:Int 表示变量是Int类型
//      case _:Boolean =>println(s"$x 是Boolean  类型的")
//      case _=>println("其他")
//    }
//  }


//  //匹配数组
//  def main(args: Array[String]): Unit = {
//    var arr1=Array(1,2,3)//三个元素,并且第一个为1
//    var arr2=Array(1,6,7)
//    var arr3=Array(0,1,6,7,3)
//
//    var arr=Array(1)
//    arr match {
//      case Array(0)=>println("1个元素,并且第一个为0")
//      case Array(1,x,y)=>println(s"三个元素,且第一个为1,第二个是${x},第三个是${y}")
//      case Array(1,_*)=>println("n个元素,且第一个为1")
//      case _=>println("其他")
//    }
//  }


//  //匹配 case class
//def main(args: Array[String]): Unit = {
//  case class Stu(name:String)
//  case class Teacher(name:String,subject:String)
//  val s1=Stu("小花")
//  val t1=Teacher("小明","体育")
//
//  val x:Any= s1
//
//  x match {
//    case Stu(a)=>println(s"学生${a}")
//    //属性个数要对应上
//    case Teacher(a,b)=>println(s"${b}老师${a}")
//    case _=>println("其他")
//  }
//}

  //定义变量赋值
//  def main(args: Array[String]): Unit = {
//    var arr=Array(1,2,3,4,7)
//    //任务:定义三个变量,分别保存数组中第一个,第二个,第三个元素
    var  x=arr(8)
    var  y=arr(1)
    var  z=arr(2)
//    var Array(x,y,z,_*)=arr
//    println(s"x=$x,y=$y,z=$z")
//  }
def main(args: Array[String]): Unit = {
  
}

}
相关推荐
Asthenia041225 分钟前
Spring扩展点与工具类获取容器Bean-基于ApplicationContextAware实现非IOC容器中调用IOC的Bean
后端
bobz96542 分钟前
ovs patch port 对比 veth pair
后端
Asthenia04121 小时前
Java受检异常与非受检异常分析
后端
uhakadotcom1 小时前
快速开始使用 n8n
后端·面试·github
JavaGuide1 小时前
公司来的新人用字符串存储日期,被组长怒怼了...
后端·mysql
bobz9651 小时前
qemu 网络使用基础
后端
Asthenia04122 小时前
面试攻略:如何应对 Spring 启动流程的层层追问
后端
Asthenia04122 小时前
Spring 启动流程:比喻表达
后端
Asthenia04122 小时前
Spring 启动流程分析-含时序图
后端
ONE_Gua2 小时前
chromium魔改——CDP(Chrome DevTools Protocol)检测01
前端·后端·爬虫