2.7 Go语言中的if-else
Posted 孙琦Ray
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了2.7 Go语言中的if-else相关的知识,希望对你有一定的参考价值。
从本节开始学习Go语言中的控制结构,其实每一种语言的控制结构非常雷同,只是在关键字、格式上略有差别。
基本语法if-else
Go中基本if-else的使用方法
package main
import
"fmt"
func main()
if 5 > 1
fmt.Println("bigger!")
else
fmt.Println("smaller!")
多重条件if-else if-else
这里有几个知识点需要注意:
- Go语言中else if的表达方法
- 对于条件,可以有括号,也可以没有括号,根据计算优先级都是一样的
- 或操作是||,并且是&&,否是!
- Go语言中还有Switch的表达方式,如果有else if太多了,Switch是不错的选择
package main
import "fmt"
func main()
i := 8
if !( i > 0 )
fmt.Println("i is below zero")
else if ( i > 0 ) && ( i <= 3 )
fmt.Println("i is between 0 and 3")
else if ( i > 3 && i <= 7 )
fmt.Println("i is between 4 and 7")
else if ( ( i > 7 ) && ( i <= 10 ) )
fmt.Println("i is between 7 and 10")
else
fmt.Println("i is bigger than 10")
常用类型的空判断
这里罗列出常用变量类型的为空判断,可以看到整型、浮点型默认值等于0,布尔型为false,而数组和Map为nil
package main
import "fmt"
func main()
var b bool
if !b
fmt.Printf("bool b default is %v\\n", b)
var i int
if i == 0
fmt.Printf("i == 0: %v\\n", i == 0)
var f float64
if f == 0
fmt.Printf("f == 0: %v\\n", f == 0)
fmt.Printf("f == 0.0: %v\\n", f == 0.0)
var str string
if str == ""
fmt.Printf("str == \\"\\": %v\\n", str == "")
var myarray []int
if myarray == nil
fmt.Printf("myarray == nil: %v\\n", myarray == nil)
var mymap map[int]string
if mymap == nil
fmt.Printf("mymap == nil: %v\\n", mymap == nil)
以上是关于2.7 Go语言中的if-else的主要内容,如果未能解决你的问题,请参考以下文章