risc-v中文社区

 找回密码
 立即注册
查看: 749|回复: 0

[原创] risc-v开发基础 Scala match表达式 ---(8)

[复制链接]

347

主题

564

帖子

2237

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
2237
发表于 2021-8-3 13:45:03 | 显示全部楼层 |阅读模式
scala match表达式
scala中的match表达式类似java中的switch语句,但功能比java中switch更强大。
java的switch case中只能用数字或常量,先来看看scala match的一个应用例子:

def greeting1(arg:String) {
  arg match {
    case "joe" => println("joe")
    case a=>println("variable value is "+a)
    case _ => println("not known")
  }
}
def greeting2(arg:Array[String]) {
  arg match {
    case Array("joe") => println("hello joe")
    case Array(a1,a2,a3) => println("hello "+a1 +","+a2+","+a3)
    case Array("joe",_*) => println("hello joe and everyone")
    case _ => println("hi")
  }
}
greeting1("joe") //joe
greeting1("jack") //variable value is jack
greeting1("someone") //variable value is someone
greeting2(Array("joe")) //hello joe
greeting2(Array("zs","li","wu","zl")) //hi
greeting2(Array("joe","rose")) //hello joe and everyone
greeting2(Array("tom","jack")) //hi
greeting2(Array("mick","tom","marry")) //hello mick,tom,marry

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



Archiver|手机版|小黑屋|risc-v中文社区

GMT+8, 2024-4-27 13:28 , Processed in 0.013236 second(s), 17 queries .

risc-v中文社区论坛 官方网站

Copyright © 2018-2021, risc-v open source

快速回复 返回顶部 返回列表