Sobes.tech
Junior — Middle

O que significa um valor nulo para um segmento numa linguagem de programação?

sobes.tech IA

Resposta da IA

Na linguagem Go, um slice é um array dinâmico que contém uma referência a um array, seu comprimento e capacidade.

O valor zero de um slice é nil. Tal slice não aponta para nenhum array, e seu comprimento e capacidade são zero.

Características do slice nulo:

  • Pode ser verificado através de slice == nil.
  • Tentar acessar seus elementos resultará em um pânico.
  • Pode ser usado como um slice vazio, por exemplo, para indicar a ausência de dados.

Exemplo:

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

// Pode-se inicializar com segurança um slice vazio:
s = []int{}
fmt.Println(s == nil) // false
fmt.Println(len(s))   // 0

Assim, o valor zero de um slice é nil, o que difere de um slice vazio, mas não de um slice nil.