Scala,将2d数组添加到3d数组中

问题描述 投票:1回答:1

im试图在scala中将2d元素添加到3d数组中。

我有这4个数组[[,]]&[9,2]&[3,1]&[0,9]

我想要[[9,2],[3,1],[0,9]]

import Array._

object thing1 {


var list_of_lists = Array():Array[Array[Int]]
var list_1 = Array(9,2)
var list_2 = Array(3,1)
var list_3 = Array(0,9)
println("lllll")
list_of_lists ++ Array(list_1(0),list_1(1));  // nope          although i get an error here saying illegal start of simple expression
list_of_lists ++ list_2;   // nope 
list_of_lists = concat(list_of_lists, list_1) // also nope 
println(list_of_lists(0)(0) + "          this should be 9")
println("lllll")
}
arrays scala concat
1个回答
0
投票

习惯上来说,您可能正在追求类似的东西

case class Point(x: Int, y: Int)
List(Point(9, 2), Point(3, 2), Point(0, 9))

但是这里有一些使用Array的示例:

val list_of_lists = new Array[Array[Int]](3)

val list_1 = Array(9,2)
val list_2 = Array(3,1)
val list_3 = Array(0,9)

list_of_lists(0) = list_1
list_of_lists(1) = list_2
list_of_lists(2) = list_3

assert(list_of_lists(0)(0) == 9)

val list_1 = Array(9,2)
val list_2 = Array(3,1)
val list_3 = Array(0,9)
assert(Array(list_1, list_2, list_3).apply(0)(0) == 9)

val list_1 = Array(9,2)
val list_2 = Array(3,1)
val list_3 = Array(0,9)
assert((Array[Array[Int]]() :+ list_1 :+ list_2 :+ list_3).apply(0)(0) == 9)
© www.soinside.com 2019 - 2024. All rights reserved.