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

}
相关推荐
阿里云云原生18 分钟前
Agent 不再是“玩具”!AgentScope Java 2.0 GA 发布:构建企业级分布式智能体底座
java·开发语言·分布式·agentscope
BIM云平台开发26 分钟前
【App.vue里跟踪页面跳转和用户ID】
开发语言·前端·javascript
NiceCloud喜云38 分钟前
ClaudeAPI 接入 n8n / Dify / Open WebUI 实战:Base URL 配置、调用示例与排错
开发语言·ai·chatgpt·aigc
庵中十三居士44 分钟前
【纯AI无人工修改】AI Agent从0到1实战:50行Python手写核心循环,一次看懂所有Agent框架的底层逻辑
开发语言·人工智能·python
甄同学1 小时前
第二十篇:MCP协议集成,Claude Code如何扩展AI Agent的能力边界
开发语言·人工智能·qt
HONG````1 小时前
HarmonyOS ArkUI Text 组件全解析:样式、截断与 Span 内联富文本
后端
@atweiwei1 小时前
Langchainrust:中LLM-as-a-Judge,用 Rust 实现一套 LLM 评估系统
开发语言·后端·ai·rust·llm·rag
风华圆舞1 小时前
鸿蒙HarmonyOS 多模态输入实战 —— 图片与文档输入智谱/DeepSeek
开发语言·人工智能·华为·php·harmonyos·arkts·arkui
芒鸽2 小时前
HarmonyOS 状态管理:@State、@Prop、@Link、@Watch
后端
Ljwuhe2 小时前
C++——模板进阶
开发语言·c++