Junior — Middle
Go-da dilimləri düzgün yaratmaq və başlatmaq necədir?
sobes.tech Süni İntellekt
AI-dan cavab
Go dilində, dilimlər (slices) dinamik məlumat strukturlarıdır və onlar uzunluğu və tutumu göstərilən bir massivə istinad edir.
Dilimlər müxtəlif üsullarla yaradılıb və başlatıla bilər:
- Başlanğıc olmadan dilim elan etmək (nil-dilim):
var s []int // nil-dilim, uzunluğu və tutumu 0
- Literal istifadə edərək dilim başlatmaq:
s := []int{1, 2, 3} // uzunluğu 3 olan dilim
- make funksiyası ilə dilim yaratmaq:
s := make([]int, 5) // uzunluğu 5 olan, sıfırlarla doldurulmuş dilim
s2 := make([]int, 3, 10) // uzunluğu 3, tutumu 10
make funksiyası arxa planda massiv ayırır və ona işarə edən dilim qaytarır.
- Massivdən dilim yaratmaq:
arr := [5]int{1, 2, 3, 4, 5}
s := arr[1:4] // indeksləri 1,2,3 olan elementlərin dilimi
Dilimlərin massivlərə istinad etdiyini və dilimdəki elementləri dəyişdirmək orijinal massivi də dəyişdiyini unutmayın.
İstifadə nümunəsi:
package main
import "fmt"
func main() {
s := make([]int, 3, 5)
fmt.Println(s) // [0 0 0]
fmt.Println(len(s)) // 3
fmt.Println(cap(s)) // 5
s = append(s, 4, 5)
fmt.Println(s) // [0 0 0 4 5]
fmt.Println(len(s)) // 5
fmt.Println(cap(s)) // 5
}
Bu yanaşma Go-da dinamik massivlərlə səmərəli işləməyə imkan verir.