Junior — Middle
Is a nil slice equal to a slice that has not been explicitly initialized?
sobes.tech AI
Answer from AI
In Go, a slice that has not been explicitly initialized has the value nil. This means that a nil slice and an uninitialized slice are equal.
Example:
var a []int // uninitialized slice
var b []int = nil // nil slice
fmt.Println(a == nil) // true
fmt.Println(b == nil) // true
fmt.Println(len(a)) // 0
fmt.Println(len(b)) // 0
Thus, a nil slice and an uninitialized slice in Go are the same: they do not point to an array and have a length of 0.