Unknown 12 yıl önce
ebeveyn
işleme
f8550edc9a
1 değiştirilmiş dosya ile 19 ekleme ve 1 silme
  1. 19 1
      eBook/05.4.md

+ 19 - 1
eBook/05.4.md

@@ -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 结构
+