Sobes.tech
Junior — Middle

Go тилинде динамикалык массивди ишке ашыруу же колдонуу мүмкүнбү жана бул кантип жасалат?

sobes.tech AI

AIден жооп

Go тилинде динамикалык массивдер слайстер (slices) аркылуу ишке ашырылат. Слайс — бул массивке көрсөтүүчү, узундугу жана сыйымдуулугу бар структура, ал динамикалык түрдө өлчөмүн өзгөртүүгө мүмкүндүк берет.

Динамикалык массив түзүү жана колдонуу мисалы:

package main
import "fmt"

func main() {
    var s []int          // бош слайс
    s = append(s, 1)     // элемент кошуу
    s = append(s, 2, 3)  // бир нече элемент кошуу
    fmt.Println(s)       // [1 2 3]

    // Баштапкы сыйымдуулугу менен слайс түзө аласыз
    s2 := make([]int, 0, 5) // узундугу 0, сыйымдуулугу 5
    s2 = append(s2, 10, 20)
    fmt.Println(s2)      // [10 20]
}

Слайс автоматтык түрдө кеңейет, append аркылуу элементтер кошулганда; керек болсо, жаңы, чоңураак массив бөлүнүп, маалыматтар көчүрүлөт.

Ошентип, Go тилинде динамикалык массив үчүн, слайстер жана append функциясы жетиштүү.