Junior — Middle
Co oznacza wartość zerowa dla wycinka w języku programowania?
sobes.tech AI
Odpowiedź od AI
W języku Go, wycinek (slice) to dynamiczna tablica, która zawiera odwołanie do tablicy, jej długość i pojemność.
Wartość zerowa wycinka to nil. Taki wycinek nie wskazuje na żadną tablicę, a jego długość i pojemność są równe zero.
Cechy wycinka zerowego:
- Można go sprawdzić za pomocą
slice == nil. - Próba dostępu do jego elementów spowoduje panic.
- Można go używać jako pustego wycinka, na przykład do oznaczenia braku danych.
Przykład:
var s []int // s == nil
fmt.Println(s == nil) // true
fmt.Println(len(s)) // 0
fmt.Println(cap(s)) // 0
// Bezpiecznie można zainicjalizować pusty wycinek:
s = []int{}
fmt.Println(s == nil) // false
fmt.Println(len(s)) // 0
W związku z tym, wartość zerowa wycinka to nil, co różni się od pustego wycinka, ale nie od wycinka nil.