go——选择和循环

go——选择和循环

if-else

用法

写法一

num := 2
if num >= 5 {
	fmt.Println("sdfsdf")
} else {
	fmt.Println("sdfsf")
}

写法二

dd := 5

if dd > 5 {
	fmt.Println("dsfsdf")
} else if dd >  2 {
	fmt.Print("dfsdfa")
} else {
	fmt.Print("sdfsd")
}

写法三

//作用域仅在if-else中
if ss:=2; ss>5 {
	fmt.Println("dfssd")
}

switch

用法

写法一

num := 5
switch num{
	case 1:
		fmt.Println("1")
    case 2:
    	fmt.Println("2")
	default:
		fmt.Println("d")
}

写法二

score := 88
switch {
	case score >=0 && score < 60:
		fmt.Print("dsfsdf")
    case score >= 60 && score < 80:
    	fmt.Print("sdfsf")
    default:
    	fmt.Print("sdfs")
}

写法三

num := 5
switch num{
	case 1,2,3:
		fmt.Println("1")
    case 4,6,7:
    	fmt.Println("2")
	default:
		fmt.Println("d")
}

写法四

//作用域仅在switch中
switch num := 5; num{
	case 1,2,3:
		fmt.Println("1")
    case 4,6,7:
    	fmt.Println("2")
	default:
		fmt.Println("d")
}

break和fallthrough

  • break中断switch
  • fallthrough可以穿透switch,即当一个条件满足时,执行下面所有判断的条件语句
  • fallthrough位于case条件的最后一行

for

说明

go中的for循环类似c语言,即

for 表达式1; 表达式2; 表达式3 {
	循环体
}
/*
**表达式1:初始化
**表达式2:判断条件
**表达式3:迭代值
**省略表达式1:
**省略表达式2:循环永远成立,即死循环
**省略表达式3:
*/

用法

用法一

for i=1; i<5; i++ {
	fmt.Println(i)
}

用法二

num := 1
for i<5 {
	fmt.Println(i)
	i++
}

break和continue

一般用法和其它语言一样,但是go可以有一些特殊的使用方法

out:
	for i := 1; i < 5; i++ {
		for j := 1; j < i; j++ {
			if j == i+2 {
				fmt.Println(i, j)
				break out
			}
		}
	}

goto

标签跳转

a := 1
loop:
	a++
	if a > 10 {
		goto loop
	}
原文地址:https://www.cnblogs.com/tomyyyyy/p/12900954.html