Junior — Middle
Da li je moguće implementirati ili koristiti dinamički niz u jeziku Go i kako se to radi?
sobes.tech АИ
Одговор од АИ
U Go jeziku, dinamički nizovi se implementiraju pomoću slice-ova. Slice je struktura koja sadrži pokazivač na niz, dužinu i kapacitet, i omogućava dinamičko menjanje veličine.
Primer kreiranja i korišćenja dinamičkog niza:
package main
import "fmt"
func main() {
var s []int // prazan slice
s = append(s, 1) // dodavanje elementa
s = append(s, 2, 3) // dodavanje više elemenata
fmt.Println(s) // [1 2 3]
// Može se kreirati slice sa početnim kapacitetom
s2 := make([]int, 0, 5) // dužina 0, kapacitet 5
s2 = append(s2, 10, 20)
fmt.Println(s2) // [10 20]
}
Slice-ovi se automatski proširuju pri dodavanju elemenata pomoću append; ukoliko je potrebno, alocira se novi veći niz i podaci se kopiraju.
Za dinamički niz u Go, dovoljno je koristiti slice-ove i funkciju append.