def swap(arr: Array[Int]): Array[Int] = {
  arr match {
    case Array(x, y, rest @ _*) => Array(y, x) ++ rest
    case _ => arr
  }
}

val arr = Array(1, 2, 3, 4, 5)
val swappedArr = swap(arr)
println("新数组中的元素为:" + swappedArr.mkString(", ")) // 输出:新数组中的元素为:2, 1, 3, 4, 5

解析:

利用模式匹配可以方便地对数组进行操作。在这里,我们使用 case Array(x, y, rest @ _) 匹配数组,其中 x 和 y 分别表示数组中的前两个元素,rest @ _ 表示剩余的元素。然后,我们将 y 和 x 组成一个新的数组,并将剩余元素与其连接起来,得到交换后的新数组。如果数组不满足匹配条件,则直接返回原数组。

利用模式匹配编写一个 swaparr ArrayInt 函数交换数组中前两个元素的位置。所用数组如下:难度指数★★★Array1 2 3 4 5程序运行结果如下:新数组中的元素为:21345用Scala写完整代码

原文地址: https://www.cveoy.top/t/topic/cZXa 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录