if语句
func test_if() {
if age:=19;age<20 { // 局部初始化age,if之外age无效
fmt.Printf("青春无敌")
}else if age<40 {
fmt.Println("你个臭阿姨")
}else {
fmt.Println("你个臭婆婆")
}
}
func test_if() {
age:=19 // if之前初始化age,if之后,age的值被改变
if age<20 {
fmt.Printf("青春无敌")
age++
}else if age<40 {
fmt.Println("你个臭阿姨")
age++
}else {
fmt.Println("你个臭婆婆")
age++
}
}
switch
func test_switch(){
var a int = 10
// 默认判断条件 ==
switch a {
case 1: // 判断a==1
fmt.Println(a)
case 2,3,4: // or的关系
fmt.Println(a)
default:
fmt.Println(a) // 上面所有条件都不符合,执行default
}
// 无条件,在case中写条件
switch {
case a==10:
fmt.Println(a)
case a==11||a==12: // ||代表or关系
fmt.Println(a)
case a<100&&a>12: // &&代表and关系
fmt.Println(a)
}
// fallthrough
switch {
case a==10:
fmt.Println(a)
fallthrough // 执行下一个case,并且不做判断,直接执行代码
case a==11:
fmt.Println(a)
}
}
for语句
// 局部初始化
for i:=0;i<10;i++{ // i+=2或者i=i+2自增2
fmt.Println(i)
}
// 省略初始化->外部初始化
i := 0
for ;i<10;i++{
fmt.Println(i)
}
// 省略自增->内部自增
i := 0
for ;i<10;{
fmt.Println(i)
i++
}
// 外部初始化且省略自增的简写->等同于其它语言中的while循环
i := 0
for i<10{
fmt.Println(i)
i++
}
// 省略判断->内部判断
i := 0
for ;;i++{
if i>10{
break
}
fmt.Println(i)
}
// 省略判断->不做判断,也不在循环体中用break:死循环
i : =0
for ;;i++{
fmt.Println(i)
}
// 全省略->死循环
i := 0
for {
fmt.Println(i)
}