Golang : Null and nil value

Programmers coming from different programming languages to Golang might wonder how does one deal with NULL values. I put down these reminders below about NULL value for myself and maybe this can be useful to you as well.

Here you go :

  1. Golang does not support NULL.

  2. Nil is the equivalent of NULL in Golang.

  3. All variables by default are initiated with the nil(zero) value.

  4. Example usage of nil :

      correctHash := sha1.New()
      fmt.Printf("%x \n", correctHash.Sum(nil))
  5. Function returning nil will NOT compile,

      // not OK
      func getName() string {
     return nil 

    but returning nil to a pointer or reference (such as a struct) is ok and will compile.

      type Person struct {
     name string
      // OK
      func getName() *Person {
     return nil 

By Adam Ng

IF you gain some knowledge or the information here solved your programming problem. Please consider donating to the less fortunate or some charities that you like. Apart from donation, planting trees, volunteering or reducing your carbon footprint will be great too.