Go for/if

Golang
542
0
0
2022-08-18
标签   Golang基础

for 循环

写法1

批量赋值
func main() {
pars := []int{1,2,3,4}
for i,j := 0,len(pars)-1; i < j; i,j = i+1,j-1 {
//pars[0],pars[1] = pars[2],pars[3]
fmt.Println("i: "+strconv.Itoa(i)+ " 值是 "+strconv.Itoa(pars[i]))
fmt.Println("j: "+strconv.Itoa(j)+ " 值是 "+strconv.Itoa(pars[j]))
pars[i],pars[j] = pars[j],pars[i]
fmt.Println(pars)
fmt.Println("--------- ")
}
fmt.Println("最终结果如下")
fmt.Println(pars)
os.Exit(200)
}

写法2

test := map[int]int{1:1,2:2,3:3,4:4}
fmt.Println(test[100])
pid := 1
for i := test[pid]; i != 0; i = test[pid] {
fmt.Println("i的结果是: "+ strconv.Itoa(i))
pid++
}
//返回结果
0
i的结果是: 1
i的结果是: 2
i的结果是: 3
i的结果是: 4

if 案例1

基础的循环就不说了
在判断时可以同时执行定义赋值等操作
test := map[int]int{1:1,2:2,3:3,4:4}
if data,isExist:=test[1];data > 0 && isExist{
fmt.Println(data)
fmt.Println(isExist)
}
//返回
1
true
案例2
if num := 1;2 > num {
num += 3
fmt.Println(num)
}else if 20 < num {
num -=2
fmt.Println(num)
}else {
fmt.Println("执行完毕")
}
//返回数据
4