scala 对一个数组分组操作

通常我们有一些需求,对一个数组两两进行翻转,通常就涉及到奇数偶数,否则就会出现数组index异常了,所以我们该怎么办呢? 虽然是一个入门级问题,但是我还是觉得这是一个很有意思的题目,因此写了一个对于通用count 数组的操作,以后做题可以直接复制粘贴。

val arr1 = Array(1, 2, 3, 4, 5)
  val arr2 = ArrayBuffer[Int]()
  val num = 3
  for(i <- 0 until(arr1.length /num+1);j = i*num;k <- (j until(j+num)).reverse){ //使用 num+1 计算出到底有多少个组
    try {
      arr2 += arr1(k)
    }
    catch {
      case ex:ArrayIndexOutOfBoundsException =>{
      }
    }
  }
  print(arr2)

输出:[3,2,1,5,4]
原文地址:https://www.cnblogs.com/tjpeng/p/11613130.html