Go语言中也是有if、when、for等判断

一、if

编写main.go文件

package main

import "fmt"

func main() {
	var score = 86
	if score >= 90{
		fmt.Println("A")
	}else if score >75{
		fmt.Println("B")
	}else if score >=0 {
		fmt.Println("C")
	}else {
		fmt.Println("数字错误")
	}
}

需要注意的点:
1、if和第一个{ 必须在一行
2、if判断结构中可以没有else ifelse,下面这么写也是正确的

	var score = 86
	if score >= 90{
		fmt.Println("A")
		}

3、main.go文件中变量score是在main函数体中声明的,较不安全。可以写到if语句中

package main

import "fmt"

func main() {
	
	if score := 86 ;score >= 90{ //把变量写入到if语句中,main函数调用不了
		fmt.Println("A")
	}else if score >75{
		fmt.Println("B")
	}else if score >=0 {
		fmt.Println("C")
	}else {
		fmt.Println("数字错误")
	}
}

否则将会报错:
Go语言之流程控制_变量声明
二、for

Go语言中的所有循环类型均可以使用for关键字来完成
for循环的基本格式如下:

for  初始语句; 条件表达式; 结束语句{
		循环体语句
}

条件表达式返回true时循环体将一直运行下去,当条件表达式为false时,自动退出循环语句

package main

import "fmt"

func main() {
	for i :=0; i<10; i++ {
		fmt.Println(i)
	}
}

输出结果:0 ...9
需要注意的是:
1、重点是结构体执行顺序
1)得到i变量值
2)判断i是不是小于10,如果小于10,打印i
3)最后运行i++,一个循环结束
4)下一个循环开始,此时i变成了1
5)判断i现在是不是小于10
6)小于10,打印i的值
7)再执行i++

2、也可以把i变量声明在main主函数中,但是分号必须在

package main

import "fmt"

func main() {
	i :=1   //把变量声明放在for语句外面,其他main函数中的其他语句可以调用
	for ;i<10; i++ {
		fmt.Println(i)
	}
}

3、for循环语句中使用if判断语句

使用break可以让循环终止
下面的代码意思是i等于3的时候,终止循环,否则就打印i的值

package main

import "fmt"

func main() {
	i :=0
	for ; i<10 ; i++ {
		if i == 3 {
			break
		}else {
			fmt.Println(i)
		}

	}
}

输出结果:0 1 2

使用continue可以让循环跳过下面的语句,直接到结束语句
下面的代码意思是当i等于3时候,直接跳到结束语句i++

package main

import "fmt"

func main() {
	i :=0
	for ; i<10 ; i++ {
		if i == 3 {
			continue
		}else {
			fmt.Println(i)
		}

	}
}

输出结果:0 1 2 4 5 6 7 8 9

三、switch

switch多用于多重判断情况

package main

import "fmt"

func main() {

	switch num := 5;num {
	case 1:
		fmt.Println("一")
	case 2:
		fmt.Println("二")
	case 3:
		fmt.Println("三")
	case 4:
		fmt.Println("四")
	case 5:
		fmt.Println("五")
	}
}

同样也可以把num变量放在外面

package main

import "fmt"

func main() {
	num := 5
	switch num {
	case 1:
		fmt.Println("一")
	case 2:
		fmt.Println("二")
	case 3:
		fmt.Println("三")
	case 4:
		fmt.Println("四")
	case 5:
		fmt.Println("五")
	}
}

也可以把case等于多个值,用逗号隔开

package main

import "fmt"

func main() {
	num := 5
	switch num {
	case 1,2,3,4,5:
		fmt.Println("一")

	}
}

输出结果:

需要注意的是:
每一个switch只能有一个default

package main

import "fmt"

func main() {
	num := 5
	switch num {
	case 1,2,3,4,5:
		fmt.Println("一")
	default:
		fmt.Println("输入错误")

	}
}

总结:
不管是if,还是switchfor都可以把变量放到函数的内外部,放到内部使用;