Go-Grundlagen

Go Arrays

A fixed number of values of one type, and why assigning an array copies it.

  • Einsteiger
  • 2 Min. Lesezeit
  • 1 ausführbares Beispiel
Das lernst du
  • [5]int and [...]int
  • Arrays are values
  • Arrays of arrays
var scores [5]int
720
01
02
03
644
Items you do not set keep the zero value.

Fixed size, copied on assignment

An array holds a fixed number of values of one type, and its length is part of its type. Arrays are less common than slices in Go, but slices are built on top of them.

[5]int starts with five zeros. [...] lets the compiler count the items. Assigning an array copies every item, so changing copyOfPrimes leaves primes alone. An array of arrays makes a grid.

Das Wichtigste

  1. The length is part of the type.
  2. Assigning an array copies every item.
  3. Slices are built on arrays.

Ausführbares Go-Beispiel

Go
Code ausführen →
main.go
package main

import "fmt"

func main() {
	var scores [5]int // fixed size, zero values
	scores[0] = 72
	scores[4] = 64
	fmt.Println(scores, len(scores))

	primes := [...]int{2, 3, 5, 7}
	copyOfPrimes := primes // arrays are values: this copies all items
	copyOfPrimes[0] = 99
	fmt.Println(primes, copyOfPrimes)

	grid := [2][3]int{{1, 2, 3}, {4, 5, 6}}
	fmt.Println(grid[1][2], grid)
}
Run-Button für dieses Beispiel erstellen Ergebnis der Ausführung
[72 0 0 0 64] 5
[2 3 5 7] [99 3 5 7]
6 [[1 2 3] [4 5 6]]

Üben

Öffne das Beispiel im Online-Compiler, ändere einen Wert oder füge eine Zeile hinzu und sage die Ausgabe voraus, bevor du es ausführst. Bring den Code danach absichtlich zum Scheitern und lies die Meldung des Compilers.

Lektion fertig?

Markiere sie als gelernt, um deinen Fortschritt zu verfolgen.

Weiter: Slices →

Mit einer Challenge üben

Nutze den Inhalt dieser Lektion, um ein echtes Problem zu lösen. Jede Challenge läuft im Browser, mit sofortigen Tests und einem KI-Review.

Alle Challenges