我试图将2个四维数组加在一起,我有类型不匹配的错误; found:需要的单位:Array [Array [Array [Array [Double]]]]
这是我的代码
val a = Array.ofDim[Int](3,1,4,2)
val b = Array.ofDim[Double](4,1,5,3)
var c : Array[Array[Array[Array[Double]]]] = Array()
c = (a zip b).map{ case (x,y) => x + y }
编辑:更正语法=至: 对不起,麻烦
答案 0 :(得分:1)
首先,您要创建没有任何内容的多维数组。
请考虑以下事项。
val x = Array.ofDim[Char](21)
x.length // res0: Int = 21
x.head.toInt // res1: Int = 0
这将创建一个Array[Char]
,其中包含21个空(或零初始化)元素。
此外,当你压缩2个4-dim数组时,你会得到一个元组数组,每个元组包含2个3-dim数组。
val a = Array.ofDim[Int](3,1,4,2)
val b = Array.ofDim[Double](4,1,5,3)
a zip b // res0: Array[(Array[Array[Array[Int]]], Array[Array[Array[Double]]])]
所以这些不能在不深入的情况下加在一起。