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("其他")
    }
  }
}

运行结果

相关推荐
oscar9991 分钟前
OpenCode Go :为开放编码模型准备的低价订阅方案
开发语言·后端·golang
.千余2 分钟前
【Linux】开发工具2:vim
linux·服务器·开发语言·学习
SWAGGY..4 分钟前
【C++初阶】:(10)vector的使用及模拟实现
开发语言·c++
所愿ღ4 分钟前
SSM框架-Spring2
java·开发语言·笔记·spring
故事还在继续吗11 分钟前
C++11关键特性
开发语言·c++·算法
格林威11 分钟前
面阵相机 vs 线阵相机:堡盟与Basler选型差异全解析 +C++ 实战演示
开发语言·c++·人工智能·数码相机·计算机视觉·视觉检测·工业相机
zzzsde12 分钟前
【Linux】线程概念与控制(2)线程控制与核心概念
linux·运维·服务器·开发语言·算法
白夜111713 分钟前
C++(不适合使用 CRTP情况)
开发语言·c++·笔记
栗少20 分钟前
Python 入门教程(面向有 Java 经验的开发者)
java·开发语言·python
草莓熊Lotso20 分钟前
Linux C++ 高并发编程:从原理到手撕,线程池全链路深度解析
linux·运维·服务器·开发语言·数据库·c++·mysql