3.match中匹配变量1 2 3 4 5 6 7 8 def main(args: Array[String]): Unit = { val name = "mo" name match { //将name的值赋给myName,此时这个case一定会匹配到 case myName => println(myName) } }4.变量类型匹配①只有类型相同的变量才会匹配到...
package test_34 object test1 { def main(args: Array[String]): Unit = { //身份证号 // val id = "421181200408088237" val id = "331181200408088237" //截取前两位 val pre = id.substring(0,2).toInt pre match { case 42 => println("湖北") case 11 => println("北京") case 31 => ...
//样本类case class//层级包括一个抽象基类Expr和四个子类,每个代表一种表达式//样本类自动添加与类名一致的工厂方法abstractclassExprcaseclassVar(name:String)extendsExpr//括号内参数不用加val,默认为加val的字段caseclassNumber(num:Double)extendsExprcaseclassUnOp(operator: String, arg: Expr)extendsExprcasecla...
package test_34 object test2 { def main(args: Array[String]): Unit = { //从数据库中获得数据 1,2,3,4 //要显示给用户的是 一等,二等,三等,四等 val level = 3 val levelTxt = level match { case 1 => "一等" case 2 => "二等" case 3 => "三等" case 4 => "四等" case...
Scala是没有Java中的switch case语法的,相对应的,Scala提供了更加强大的match case语法,即模式匹配,类替代switch case,match case也被称为模式匹配。match case的语法如下:变量 match { case 值 => 代码 }。如果值为下划线,则代表了不满足 以上所有情况下的默认情况如何处理。此外,match case中,只要一个...
{case1 => "Num ONE"case"HELLO" => "String HELLO"casetrue=> "Boolean True"case'+' => "Char +"case_ => "don't know val what it is "}//模式匹配类型def descType(x : Any) : String =x match {casei : Int => "Int " +icases : String => "String " +scasel : List[String...
$ scalac Test.scala $ scala Test manymatch 对应 Java 里的 switch,但是写在选择器表达式之后。即: 选择器 match {备选项}。 match 表达式通过以代码编写的先后次序尝试每个模式来完成计算,只要发现有一个匹配的case,剩下的case不会继续匹配。 接下来我们来看一个不同数据类型的模式匹配:...
*/objectTest3{defmain(args:Array[String]):Unit={valalice=Person("alice",18)//case样例类对象创建可以省略newvalbob=newPerson("bob",20)valcharlie=newPerson("charlie",22)for(person<-List(alice,bob,charlie)){//模式匹配personmatch{casePerson("alice",18)=>println("hi alice")casePerson("bob...
Scala Case类和对象 Scala是没有Java中的switch case语法的,相对应地,scala提供了更加强大的match case 语法,即模式piper,类替代switch case,match case也被称为模式匹配。 Scala的matach case与Java的switch case最大的不同点在于,java的switch case仅能匹配变量的值,比如1,2,3等;而scala的match case可以匹配...
模式匹配一般在最后会加上一个case x/case _ 用于匹配其他情况 案例二演示 上超市购物,通过商品名称匹配,返回对应商品的单价 代码语言:javascript 复制 defmain(args:Array[String]):Unit={print("请输入商品名称:")val str:String=StdIn.readLine()val price=str match{case"可乐"=>3.0case"鸡翅"=>9.8case"...