多维数组简单类似于套娃,一个数组充当一个数组的元素(个人理解,不晓得对不对,不重要),类似于套娃娃
1.多维数组的创建
val 名: Array[Array[数据类型]] = Array.ofDim[数据类型](n1,n2)
object Test03_MulArray {
def main(args: Array[String]): Unit = {
// 1. 创建二维数组
val array: Array[Array[Int]] = Array.ofDim[Int](3, 4) //三个一维数组,每个数组4个元素
// 2. 访问元素
array(0)(3) = 19
array(1)(0) = 25
println(array.mkString(", ")) //打印出来是地址,同不可变数组的直接打印
// 第一种方法
for (i <- array.indices; j <- array(i).indices) { // 取第n个数组,遍历第n个数组
print(array(i)(j) + "\t")
if (j == array(i).length - 1)println()
}
// 第二种方法
array.foreach(line => line.foreach(elem => print(elem + "\t")))
// array.foreach(line => line.foreach(line => line.foreach(....print(elem => elem + "\t"))))
// 第三种方法
array.foreach(_.foreach(print(_)))
//array.foreach(_.foreach(_.foreach(....print)))
}
}
2.多维数组的打印
打印看上图代码啦,打印还是比较好理解的,我对第一种方法比较钟情,因为对于输出结果的展示更加自定义,看的更舒服。
[I@1e643faf, [I@34ce8af7, [I@b684286
第一种打印结果
0 0 0 19
25 0 0 0
0 0 0 0
第二种打印结果
0 0 0 19 25 0 0 0 0 0 0 0
第三种打印结果
00019250000000