Scala的模式匹配(7)

复制代码
package hfd

object Test35 {
  case class Person(name:String)
  case class Student(name:String,className:String)

//match case 能根据 类名和属性的信息,匹配到对应的类
  //注意:
  //1 匹配的时候,case class的属性个数要对上
  //2 数学名不需要一一对应
  def main(args: Array[String]): Unit = {
    val p1=Person("小花")
    val s1=Student("小明","2(3)班")

    val a:Any=p1
    a match {
      case Person(name)=>println("普通人类",name)
      case Student(name,className)=>println(className,"的学生",name)
      case _=>println("其他")
    }
  }
}
相关推荐
superman超哥11 分钟前
Context与任务上下文传递:Rust异步编程的信息高速公路
开发语言·rust·编程语言·context与任务上下文传递·rust异步编程
6***830512 分钟前
SpringBoot教程(三十二) SpringBoot集成Skywalking链路跟踪
spring boot·后端·skywalking
步达硬件12 分钟前
【Matlab】批量自定义图像处理
开发语言·matlab
军军君0114 分钟前
Three.js基础功能学习七:加载器与管理器
开发语言·前端·javascript·学习·3d·threejs·三维
liulilittle16 分钟前
OPENPPP2 网络驱动模式
开发语言·网络·c++·网络协议·信息与通信·通信
mjhcsp19 分钟前
C++ AC 自动机:原理、实现与应用全解析
java·开发语言·c++·ac 自动机
huihuihuanhuan.xin20 分钟前
后端八股之java并发编程
java·开发语言
寻星探路24 分钟前
【算法通关】双指针技巧深度解析:从基础到巅峰(Java 最优解)
java·开发语言·人工智能·python·算法·ai·指针
崇山峻岭之间27 分钟前
Matlab学习记录32
开发语言·学习·matlab
向上的车轮27 分钟前
如何选择Python IDE?
开发语言·ide·python