Golang: if then else
If-Statement
if test { body }
Note: no parenthesis after the “if”.
package main import "fmt" func main() { var x = 3 if x < 0 { fmt.Println("yes") } }
If else
if test { body1 } else { body2 }
package main import "fmt" func main() { var x = 3 if x < 0 { fmt.Printf("no") } else { fmt.Printf("yes") } }
else if
if test {
body1
} else if {
body2
} else {
body3
}
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.
if i := -2; x < i {
fmt.Println("no")
}
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 )