Sobes.tech
Junior — Middle

Môžete vysvetliť mechanizmus pridania prvku na koniec dátovej štruktúry, napríklad zoznamu alebo poľa?

sobes.tech AI

Odpoveď od AI

V jazyku Go sa na pridanie prvku na koniec rezu (slice) používa vstavaná funkcia append. Rezy sú dynamické štruktúry, ktoré môžu meniť veľkosť.

Príklad:

package main
import "fmt"

func main() {
    nums := []int{1, 2, 3}
    nums = append(nums, 4) // pridáme 4 na koniec
    fmt.Println(nums) // [1 2 3 4]
}

Ak rez nemá dostatočnú kapacitu, append vytvorí nový pole s väčšou veľkosťou, skopíruje staré prvky a pridá nový. Polia v Go majú pevne stanovenú veľkosť, preto sa na dynamické pridávanie používajú rezy.