Volver a la página principal
jueves 20 marzo 2025
12

¿Qué es nil en Golang?

En Go, nil representa la ausencia de un valor en ciertos tipos de datos, como punteros, slices, mapas, interfaces, canales y funciones. Es equivalente a null en otros lenguajes de programación.

Uso de nil en Golang

En Go, nil se usa principalmente en los siguientes tipos de datos:

  • Punteros
  • Slices
  • Mapas
  • Interfaces
  • Canales
  • Funciones

Cuando una variable de estos tipos no ha sido inicializada, su valor predeterminado es nil.

Ejemplo con punteros

package main  
import "fmt"  

func main() {  
    var p *int  
    fmt.Println(p) // Imprime: <nil>
}

Ejemplo con slices

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

Consideraciones sobre nil

  • Intentar acceder a un mapa nil causará un panic si se intenta asignar un valor.
  • Un slice nil se comporta como un slice vacío, pero no tiene memoria asignada.
  • Comparar una interfaz con nil puede ser engañoso si no está correctamente inicializada.

Referencia oficial

Para más detalles, consulta la documentación de Go:

Etiquetas:
go
Compartir:
Creado por:
Author photo

Jorge García

Fullstack developer