Назад к вопросам
Junior — Middle
76
Какие операции допустимы при работе с nil слайсом в языке программирования?
Компании, где спрашивали
Кадровое агентство BWG
Ответ от нейросети
sobes.tech AI
В Go nil-слайс — это слайс, который не указывает ни на какой массив и имеет длину и ёмкость равные нулю. С ним допустимы следующие операции:
- Можно читать длину и ёмкость:
len(nilSlice) == 0,cap(nilSlice) == 0. - Можно выполнять операции добавления элементов через
append, что создаст новый слайс с выделенной памятью. - Можно проходить по nil-слайсу в цикле
for range— цикл просто не выполнится.
Нельзя:
- Обращаться к элементам по индексу, например
nilSlice[0]вызовет panic.
Пример:
var s []int // nil-слайс
fmt.Println(len(s)) // 0
s = append(s, 1) // теперь s не nil
fmt.Println(s) // [1]