Golang: if then else

By Xah Lee. Date: . Last updated: .

If

package main

import "fmt"

func main() {

    var x = 3

    if x < 0 {
        fmt.Println("no")
    }

    fmt.Println("yes")

}

Note, there's no parenthesis after the “if”.

If else

package main

import "fmt"

func main() {

    var x = 3

    if x < 0 {
        fmt.Printf("no")
    } else {
        fmt.Printf("yes")
    }

}

else if

package main

import "fmt"

func main() {

    var x = 3

    if x < 0 {
        fmt.Println(-1)
    } else if x > 0 {
        fmt.Println(1)
    } else {
        fmt.Println(0)
    }

}

If with a short statement

The if statement can start with a short statement to execute before the condition.

Variables declared by the statement are in scope of the if block and all the else blocks.

package main

import "fmt"

func main() {

    var x = 3

    // if statement can start with a short statement
    if i := -2; x < i {
        fmt.Println("no")
    }

    fmt.Println("yes")

}

ternary if, if expression

There's no “if expression”, such as JavaScript's ( test ? expr1 : expr2 )

Reference

The Go Programming Language Specification - The Go Programming Language#If_statements

If you have a question, put $5 at patreon and message me.

Golang

  1. Compile, Run
  2. Package, Import
  3. Comment
  4. Print
  5. String
  6. Rune
  7. Variable
  8. Zero Value
  9. Constant
  10. If Then Else
  11. Switch/Case
  12. Loop
  13. Basic Types
  14. Array
  15. Slice
  16. Map
  17. Struct
  18. Function
  19. regexp
  20. Read File
  21. Write to File
  22. Walk Dir
  23. Check File Exist
  24. System Call
  25. Get Script Path
  26. Pointer
  27. Defer
  28. Random Number

Examples

  1. match any regexp
  2. Validate Links
  3. Generate Sitemap

Reference

  1. Go Spec