An array never gets nil. In fact, when you declare a array you give it its length and then golang inits it to zero value of the type of the array. For example in this case it creates a two array of int and init it with 0 ([0 0]
var array1 [2]int
fmt.Printf("%v\n%d", array1, len(array1))