Golang是一门很有个性的语言,我们会慢慢体会到的。比如:这次我们要用到的if ... else...
1. 普通的if ... else
if 语句看起来跟 C 或者 Java 中的一样,除了没有了 ( ) 之外(甚至强制不能使用它们),而 { } 是必须的。
package main
import "fmt"
func main() {
var i, j int
i, j = 100, 200
fmt.Printf("i = %d, j = %d \n", i, j)
if i > j {
fmt.Println(i)
} else {
fmt.Println(j)
}
}
##输出
i = 100, j = 200
200
2. Golang很个性化的if判断
if 语句可以在条件之前执行一个简单的语句。由这个语句定义的变量的作用域仅在 if 范围之内。
package main
import "fmt"
func main() {
var i, j int
i, j = 100, 200
fmt.Printf("i = %d, j = %d \n", i, j)
if res:=j % i; res ==0 {
fmt.Println("divide exactly.")
} else {
fmt.Println("Fail.")
}
}
## 输出:
i = 100, j = 200
divide exactly.
其实多数时候用于DB的CRUD判断结果的。
3. 没有elseif 或者诸如此类的关键字,必须写成 else if (中间有空格的)
上面例子简单改一下,成这样。
package main
import "fmt"
func main() {
var i, j int
i, j = 100, 200
fmt.Printf("i = %d, j = %d \n", i, j)
if res := i % j; res ==0 {
fmt.Println("divide exactly.")
} else if res := j / i; res > 0 {
fmt.Println("j is bigger than i.")
} else {
fmt.Println("Fail.")
}
}
自己运行一下好了 ^_^ .