开发者学堂课程【Go 语言核心编程 - 基础语法、数组、切片、Map: for 循环注意事项和细节(1)】学习笔记,与课程紧密联系,让用户快速学习知识。
课程地址:https://developer.aliyun.com/learning/course/625/detail/9575
for 循环注意事项和细节(1)
一、注意事项和细节说明
1、注意一
循环条件是返回一个布尔值的表达式,就是循环条件返回的一定是布尔类型的值,不会是返回整数或者小数。返回的一定是布尔值,不管条件多复杂,只要求返回条件是为真或者假,否则代码不能编译。
2、注意二
for 循环的第二种方式:将循环判断条件写到 for 后面,for 循环里面是循环语句也是可以的,而将变量初始化和变量迭代写到其他位置
for循环判断条件{
//循环执行语句
}
案例:
如下将循环变量初始化j : = 1 写到 for 循环前,j++ 循环变量迭代写到 for 循环中。为了与上面的 for 循环以示区别,在 Println 输出时多加上一个~。
for i :=1;i<= 10;i++{
fmt.Println(“你好,尚硅谷”,i)
}
// for 循环的第二种写法
j := 1
//循环变量初始化
for j<= 10{
//循环条件
fmt.Println(“你好,尚硅谷~”,j)
j++
//循环变量迭代
}
运行结果:
D:\goproject\src\go_code\chapter05\fordemo>go run main .go
3、注意三
for 循环的第三种使用方式:就是 for 循环后什么都不写内容是空的,只写 for 循环中的循环执行语句。这种写法就等价于 for;;{} ,而且是一个无限循环,无法退出程序,因为 for 后没有判断条件。在其他语言中这样使用是不行的,但在 Golang 语言中是可以的,这种写法通常需要配合 break 语句使用,就是当满足某个条件的时候就退出 for 循环。
for{
//循环执行语句
}
案例:
// for 循环的第三种写法
for{
fmt.Println(“ok~”)
}
如果此时运行代码,则会一直输出 ok~,进入死循环。进入死循环后,可以直接关掉运行窗口,也可以按 ctrl+c 退出程序。
运行结果:
D:\goproject\src\go_code\chapter05\fordemo>go run main .go
所以写死循环是没有用的,需要配合 break 终止进行使用。比如下面案例定义初始化 k :=1,for 中写入 if 进行条件判断,当 k<=10 时执行循环,再 i++,不停执行 if 循环,i++,直到 k>10,不满足条件 else 则执行 break,break 相当于跳出这个 for 循环。
// for 循环的第三种写法,通常配合 break 使用
k := 1
for{
//”for{“ 等价于“for;;{”
if k <= 10{
fmt.Println(“ok~”,k)
}else{
break
// break 就是退出跳出整个 for 循环
}
k++
}
运行结果:
D:\goproject\src\go_code\chapter05\fordemo>go run main .go
上面这种写法也等价于 for;;这种,for 后面是几个空语句,代码为:
k := 1
for;;{
if k <= 10{
fmt.Println(“ok~~”,k)
}else{
break
// break 就是退出跳出整个 for 循环
}
k++
}