Junior — Middle
Какво означава нулева стойност за срез в езика за програмиране?
sobes.tech AI
Отговор от AI
В езика Go, срезът (slice) е динамичен масив, който съдържа препратка към масив, дължина и капацитет.
Нулевата стойност на среза е nil. Такъв срез не сочи към никакъв масив, а дължината и капацитетът му са нула.
Характеристики на нулевия срез:
- Може да се провери чрез
slice == nil. - Опитът за достъп до елементите му ще доведе до паника.
- Може да се използва като празен срез, например за обозначаване на липса на данни.
Пример:
var s []int // s == nil
fmt.Println(s == nil) // true
fmt.Println(len(s)) // 0
fmt.Println(cap(s)) // 0
// Може безопасно да инициализирате празен срез:
s = []int{}
fmt.Println(s == nil) // false
fmt.Println(len(s)) // 0
Следователно, нулевата стойност на среза е nil, което се различава от празен срез, но не и от nil срез.