Sobes.tech
Junior — Middle

Можете ли да обясните механизма за добавяне на елемент в края на структура от данни, например списък или масив?

sobes.tech AI

Отговор от AI

В Go за добавяне на елемент към края на срез (slice) се използва вградената функция append. Срезовете са динамични структури, които могат да променят размера си.

Пример:

package main
import "fmt"

func main() {
    nums := []int{1, 2, 3}
    nums = append(nums, 4) // добавяме 4 към края
    fmt.Println(nums) // [1 2 3 4]
}

Ако срезът няма достатъчна капацитет, append ще създаде нов масив с увеличен размер, ще копира старите елементи и ще добави новия. Масивите в Go имат фиксиран размер, затова за динамично добавяне се използват срезове.