if
是条件语句。if
语句的语法是
if condition {
/* 在condition为 true 时执行 */
}
这个是单条件语句,condition
为true
时,执行条件里面的代码
if condition {
/* 在condition为 true 时执行 */
} else {
/* 在condition为 false 时执行 */
}
如果condition
为true
时,执行上面{ 代码 }
之间的代码,如果为false
时,执行else
里面的代码
if condition 1 {
/* 在condition1为 true 时执行 */
} else if condition 2 {
/* 在condition2为 true 时执行 */
}else {
/* 在condition1和condition2都为 false 时执行 */
}
条件判断顺序是从上到下。如果if
或else if
条件判断的结果为真,则执行相应的代码块。 如果没有条件为真,则else
代码块被执行。
if condition 1 {
/* condition 1 为 true 时执行 */
if condition 2 {
/* condition 2 为 true 时执行 */
}
}
这个语句只有满足条件1,然后才会进行条件2的判断,如果条件1都不满足,就不会判断条件2
else
语句应该在if
语句的大括号}
之后的同一行中。如果不是,编译器会不通过。package main
import "fmt"
func test1() {
// if条件只做判断
num := 10
if num >= 0 && num < 10 {
fmt.Println("0 <= num<10")
} else if num >= 10 && num < 20 {
fmt.Println("10<= num <20")
} else {
fmt.Println("num 不在0~20之间")
}
}
func test2() {
// if条件中先赋值,然后在做判断
if num := 10; num >= 0 && num < 10 {
fmt.Println("0 <= num<10")
} else if num >= 10 && num < 20 {
fmt.Println("10<= num <20")
} else {
fmt.Println("num 不在0~20之间")
}
}
func main() {
test1()
test2()
}
这两个test的运行结果是一样的,但是这个两个test里面的num
的作用域是不一样的,test1里面的num
的作用域是整个test1,test2里面的num
只在if
条件里面生效
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。