mirror of
https://github.com/unknwon/the-way-to-go_ZH_CN.git
synced 2025-08-11 19:41:43 +08:00
5.4.3
This commit is contained in:
@@ -1,6 +1,6 @@
|
||||
## 啊哦,亲,你看得也太快了。。。还没翻译完呢 0 0
|
||||
|
||||
要不等到 **2014 年 6 月 7 日** 再来看看吧~~
|
||||
要不等到 **2014 年 6 月 8 日** 再来看看吧~~
|
||||
|
||||
这里还有一些其它的学习资源噢~
|
||||
|
||||
@@ -236,3 +236,21 @@ The variable i is now: -1
|
||||
|
||||
## 5.4.3 无限循环
|
||||
|
||||
条件语句是可以被省略的,如 `i:=0; ; i++` 或 `for { }` 或 `for ;; { }`(`;;` 会在使用 gofmt 时被移除):这些循环的本质就是无限循环。最后一个形式也可以被改写为 `for true { }`,但一般情况下都会直接写 `for { }`。
|
||||
|
||||
如果 for 循环的头部没有条件语句,那么就会认为条件永远为 true,因此循环体内必须有相关的条件判断以确保会在某个时刻退出循环。
|
||||
|
||||
想要直接退出循环体,可以使用 break 语句(第 5.5 节)或 return 语句直接返回(第 6.1 节)。
|
||||
|
||||
但这两者之间有所区别,break 只是退出当前的循环体,而 return 语句提前对函数进行返回,不会执行后续的代码。
|
||||
|
||||
无限循环的经典应用是服务器,用于不断等待和接受新的请求。
|
||||
|
||||
```
|
||||
for t, err = p.Token(); err == nil; t, err = p.Token() {
|
||||
...
|
||||
}
|
||||
```
|
||||
|
||||
## 5.4.4 for-range 结构
|
||||
|
||||
|
Reference in New Issue
Block a user