Junior — Middle
Ce funcții și operații încorporate sunt permise pentru un slice care nu a fost încă inițializat?
sobes.tech AI
Răspuns de la AI
În Go, o slice care nu a fost inițializată (adică, este egală cu nil) poate fi utilizată pentru următoarele operații:
- Verificare pentru nil:
if slice == nil {} - Obținerea lungimii și capacității:
len(slice)șicap(slice)vor returna 0 - Se pot realiza operații de adăugare a elementelor folosind
append, de exemplu:
var s []int // slice nil
s = append(s, 1, 2, 3) // acum slice-ul este inițializat și conține elemente
Totuși, nu se poate accesa elemente după index, de exemplu s[0], dacă slice-ul este nil sau gol — acest lucru va provoca o panică.