Junior — Middle
Welke ingebouwde functies en bewerkingen zijn toegestaan voor een slice die nog niet is geïnitialiseerd?
sobes.tech AI
Antwoord van AI
In Go kan een slice die niet is geïnitialiseerd (dus gelijk is aan nil) worden gebruikt voor de volgende operaties:
- Controle op nil:
if slice == nil {} - Het verkrijgen van lengte en capaciteit:
len(slice)encap(slice)geven 0 terug - Elementen toevoegen met
append, bijvoorbeeld:
var s []int // nil-slice
s = append(s, 1, 2, 3) // nu is de slice geïnitialiseerd en bevat elementen
Echter, je kunt niet naar elementen op index zoeken, bijvoorbeeld s[0], als de slice nil of leeg is — dit zal een panic veroorzaken.