go语言 – if else 语句

if语句,即条件语句,语法是

if condition {  
}

如果条件为真,则执行{}之间的代码。

与C等其他语言不同,即使在{}之间只有一条语句,{}也是强制性的。

if语句还有可选的else ifelse模块。

if condition {  
} else if condition {
} else {
}

可以有任意数量的else if。从上到下对条件的真实性进行检测。如果条件的值为true,则执行相应的代码块。如果没有一个条件为真,则执行else块。

让我们写一个简单的程序。

示例

找出一个数字是奇数还是偶数。

package main

import (  
    "fmt"
)

func main() {  
    num := 10
    if num % 2 == 0 { // 检测是否偶数
        fmt.Println("the number is even") 
    }  else {
        fmt.Println("the number is odd")
    }
}

if num % 2 == 0语句检查数字除以2余数是否为0。如果是,则打印“数字是偶数”,否则打印“数字是奇数”。在上面的程序中,数字是偶数。

if还有一个变体,它包含一个可选的语句模块,该模块在条件求值之前执行。它的语法是

if statement; condition {  
}

让我们重写示例程序,用上面的语法来判断这个数字是偶数还是奇数。

package main

import (  
    "fmt"
)

func main() {  
    if num := 10; num % 2 == 0 { // 检测是否偶数
        fmt.Println(num,"is even") 
    }  else {
        fmt.Println(num,"is odd")
    }
}

在上面的程序中,numif语句中初始化。需要注意的一点是,num只能从ifelse内部访问。也就是说,num的范围仅限于if else块。如果我们试图从ifelse外部访问num,编译器就会报错。

让我们再写一个使用else if的程序。

package main

import (  
    "fmt"
)

func main() {  
    num := 99
    if num <= 50 {
        fmt.Println("number is less than or equal to 50")
    } else if num >= 51 && num <= 100 {
        fmt.Println("number is between 51 and 100")
    } else {
        fmt.Println("number is greater than 100")
    }

}

在上面的程序中,如果num >= 51 && num <= 100为真,则程序将输出51到100之间的数字。

章节



浙ICP备17015664号 浙公网安备 33011002012336号 联系我们 网站地图  
@2019 qikegu.com 版权所有,禁止转载