scala创建动态二维数组Array[ArrayBuffer[]]三种写法

下面我们开始创建含有10个ArrayBuffer的Array

方法一:最直接(BEN)的方法

val index = Array(ArrayBuffer[Int](), ArrayBuffer[Int](), ArrayBuffer[Int](), ArrayBuffer[Int](), ArrayBuffer[Int](), ArrayBuffer[Int](), ArrayBuffer[Int](), ArrayBuffer[Int](), ArrayBuffer[Int](), ArrayBuffer[Int]())

方法二:定义函数+for循环

def dim2B(rows : Int):Array[ArrayBuffer[Int]]={
      val d2 :Array[ArrayBuffer[Int]] = new Array(rows)
      for (k <-0 until rows ) {
        d2(k) = new ArrayBuffer[Int]()
      }
      d2
}
val index = dim2B(10)

简化:

def dim2B(rows : Int)={
      val d2  = new Array[ArrayBuffer[Int]](rows)
      for (k <-0 until rows ) {
        d2(k) = new ArrayBuffer[Int]()
      }
      d2
}
val index = dim2B(10)

方法三:for循环

var index = new Array[ArrayBuffer[Int]](10)
for(i <- 0 until index.length){
      index(i) = new ArrayBuffer[Int]()
}

你可能感兴趣的:(scala)