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 = {
  
}

}
相关推荐
aramae13 分钟前
MySQL内置函数(7)
开发语言·笔记·后端·mysql·其他
徐小夕1 小时前
存量.doc 文档怎么办?JitWord 开源转换库打通旧文档到在线协同全链路
后端·架构·github
ee又momo1 小时前
一次 JWT Token 过期续期的踩坑记录
后端
二月龙1 小时前
App 瘦身实战:图片、so 库、资源压缩,安装包体积减小 40%
后端
大勇前进1 小时前
Kotlin 协程实战避坑:90% 的人都会踩的生命周期泄漏问题
后端
苏三说技术2 小时前
Spring AI、LangChain4j、AgentScope、Embabel,哪个AI框架更好?
后端
烽学长2 小时前
(附源码)基于Springboot+vue的图书阅读分享系统的设计与实现
java·spring boot·后端
isfox2 小时前
Python 单例模式:一个类只能有一个实例,到底怎么实现?
后端
青山木2 小时前
RocketMQ 入门到原理(三):消息存储原理
java·后端·中间件·架构·rocketmq