Sobes.tech
Junior — Middle

Ce înseamnă o valoare nulă pentru o secțiune într-un limbaj de programare?

sobes.tech AI

Răspuns de la AI

În limbajul Go, un slice este un array dinamic care conține o referință la un array, lungimea și capacitatea sa.

Valoarea zero a unui slice este nil. Un astfel de slice nu indică către niciun array, iar lungimea și capacitatea sa sunt zero.

Caracteristicile unui slice nul:

  • Poate fi verificat prin slice == nil.
  • Încercarea de a accesa elementele sale va duce la o panică.
  • Poate fi folosit ca un slice gol, de exemplu, pentru a indica absența datelor.

Exemplu:

var s []int // s == nil
fmt.Println(s == nil) // true
fmt.Println(len(s))   // 0
fmt.Println(cap(s))   // 0

// Se poate inițializa în siguranță un slice gol:
s = []int{}
fmt.Println(s == nil) // false
fmt.Println(len(s))   // 0

Prin urmare, valoarea zero a unui slice este nil, ceea ce diferă de un slice gol, dar nu de un slice nil.