[英]How do I declare an array(or equivalent) in Go
我想做类似的事情(有效)
var myArray [9][3]int
但是当我这样做
var myArray [someIntVariable][anotherOne]int
它无法使用(我知道为什么,所以我不问这个。)但是还有其他方法可以使这项工作吗?
对不起,我的英语不好。
以下内容对您有用吗?
func make2dArray(m, n int) [][]int {
myArray := make([][]int, m)
for i := range myArray {
myArray[i] = make([]int, n)
}
return myArray
}
var myArray := make2dArray(someIntVariable, anotherOne)
Go中的“数组”类型将长度作为类型的一部分,因此它们仅对长度在编译时固定的事物有用(类似于C99之前的C中的“数组”)。 如果您希望仅在运行时确定其长度的“数组”(例如Java中的数组),则您真正想要的是“切片”。 mepcotterell的答案向您展示了如何创建切片切片。
您也可能对通用矩阵包感兴趣:
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.