Ist es möglich, Bereich und Len auf einem multidimensionalen Array zu verwenden?Go: Bereich und Len eines mehrdimensionalen Arrays?
Entweder mit var a [3] int8 oder
package main
func main() {
var a [3][5]int8
for h := range a {
println(h)
}
println(len(a))
}
Beide produzieren 0 1 2 3
?
Dank dystoys Antwort, hier ist ein Beispiel für das Schreiben und Lesen eines 3-dimensionalen Arrays, das ich anpassen konnte (hier posten, weil ich Probleme hatte, Beispiele dafür zu finden, vielleicht hilft das jemand anderem):
package main
func main() {
var a [3][5][7]uint8
//write values to array
for x, b := range a {
for y, c := range b {
for z, _ := range c {
a[x][y][z] = uint8(x*100+y*10+z)
}
}
}
//read values from array
for _, h := range a {
for _, i := range h {
for _, j := range i {
print(j, "\t")
}
println()
}
println()
}
}
Was ist eine nette Möglichkeit, den Inhalt eines multidimensionalen Arrays zu durchlaufen, wenn/wenn die Größe des Arrays nicht bekannt ist/nicht bekannt ist? 2 Loops basierend auf 'len (a)' und '_, var: = range a'? Ist die Art und Weise, in der die Entfernungsskala für 3 (oder mehr) dimensionale Arrays verwendet wird, wie in '_, _, var: = Bereich a '? – kilves76
habe ich mit der loop-Lösung bearbeitet: Du brauchst zwei Loops. –
Danke für das Beispiel, ich konnte nirgends finden. – kilves76