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("其他")
    }
  }
}
相关推荐
软件黑马王子13 分钟前
C#初级教程(4)——流程控制:从基础到实践
开发语言·c#
闲猫16 分钟前
go orm GORM
开发语言·后端·golang
丁卯40438 分钟前
Go语言中使用viper绑定结构体和yaml文件信息时,标签的使用
服务器·后端·golang
李白同学2 小时前
【C语言】结构体内存对齐问题
c语言·开发语言
黑子哥呢?3 小时前
安装Bash completion解决tab不能补全问题
开发语言·bash
青龙小码农3 小时前
yum报错:bash: /usr/bin/yum: /usr/bin/python: 坏的解释器:没有那个文件或目录
开发语言·python·bash·liunx
大数据追光猿3 小时前
Python应用算法之贪心算法理解和实践
大数据·开发语言·人工智能·python·深度学习·算法·贪心算法
彳卸风4 小时前
Unable to parse timestamp value: “20250220135445“, expected format is
开发语言
bing_1584 小时前
简单工厂模式 (Simple Factory Pattern) 在Spring Boot 中的应用
spring boot·后端·简单工厂模式
dorabighead4 小时前
JavaScript 高级程序设计 读书笔记(第三章)
开发语言·javascript·ecmascript