Scala的数组匹配模式

Scala 复制代码
package Test32

//匹配:数组:元素的个数 + 元素的特征
object Test4 {
  def main(args: Array[String]): Unit = {
    val arr1 = Array(1, 2, 3)
    val arr2 = Array(0, 2, 3)
    val arr3 = Array(1, 2, 3, 4)
    val arr4 = Array(-1, 1, 2, 3, 4)

    val b: Any = arr1

    b match {
      case Array(1, x, y) => println(s"数组第一个元素是1,一共有3个元素${x},${y}")
      case Array(1, x, y, z) => println("数组第一个元素是1,一共有4个元素")
      case Array(_, 1, _*) => println("数组第一个元素是1,一共有4个元素")
      case _ => println("其他")
    }
  }
}

运行结果

相关推荐
programhelp_14 小时前
Pinterest OA 题库大公开|Programhelp 独家整理(最新高频)
java·开发语言
他是龙55114 小时前
71:Python安全 & 反序列化 & PYC反编译 & 格式化字符串安全
开发语言·python·安全
wjs202415 小时前
Go 语言接口
开发语言
草莓熊Lotso15 小时前
《告别 “会用不会讲”:C++ string 底层原理拆解 + 手撕实现,面试 / 开发都适用》
开发语言·c++·面试
水木流年追梦15 小时前
【python因果库实战27】逆概率加权模型2
开发语言·python
张槊哲15 小时前
C++ 进阶指南:如何丝滑地理解与实践多线程与多进程
开发语言·c++·算法
雪度娃娃15 小时前
Effective Modern C++——型别推导
开发语言·c++
Hello eveybody15 小时前
介绍一下背包DP(C++)
开发语言·c++·动态规划·dp·背包dp
Run_Teenage16 小时前
Linux:线程互斥,线程锁
运维·开发语言·jvm
小小de风呀16 小时前
de风——【从零开始学C++】(四):类和对象(下)
开发语言·c++·算法