Junior — Middle
Quali funzioni e operazioni integrate sono consentite per uno slice che non è ancora stato inizializzato?
sobes.tech AI
Risposta dell'AI
In Go, una slice che non è stata inizializzata (cioè, è uguale a nil) può essere usata per le seguenti operazioni:
- Controllo di nil:
if slice == nil {} - Ottenere lunghezza e capacità:
len(slice)ecap(slice)restituiranno 0 - È possibile aggiungere elementi usando
append, ad esempio:
var s []int // slice nil
s = append(s, 1, 2, 3) // ora la slice è inizializzata e contiene elementi
Tuttavia, non si può accedere agli elementi per indice, ad esempio s[0], se la slice è nil o vuota — ciò causerà un panic.