mirror of
https://github.com/unknwon/the-way-to-go_ZH_CN.git
synced 2025-08-11 20:02:56 +08:00
@@ -100,7 +100,7 @@ Example 5.3 [string_conversion2.go](examples/chapter_5/string_conversion2.go)
|
||||
|
||||
**注意事项**
|
||||
|
||||
如果您想下面一样,没有为多返回值的函数准备足够的变量来存放结果:
|
||||
如果您像下面一样,没有为多返回值的函数准备足够的变量来存放结果:
|
||||
|
||||
func mySqrt(f float64) (v float64, ok bool) {
|
||||
if f < 0 { return } // error case
|
||||
@@ -138,4 +138,4 @@ Example 5.3 [string_conversion2.go](examples/chapter_5/string_conversion2.go)
|
||||
|
||||
- [目录](directory.md)
|
||||
- 上一节:[if-else 结构](05.1.md)
|
||||
- 下一节:[switch 结构](05.3.md)
|
||||
- 下一节:[switch 结构](05.3.md)
|
||||
|
@@ -219,7 +219,7 @@ for t, err = p.Token(); err == nil; t, err = p.Token() {
|
||||
|
||||
这是 Go 特有的一种的迭代结构,您会发现它在许多情况下都非常有用。它可以迭代任何一个集合(包括数组和 map,详见第 7 和 8 章)。语法上很类似其它语言中 foreach 语句,但您依旧可以获得每次迭代所对应的索引。一般形式为:`for ix, val := range coll { }`。
|
||||
|
||||
要注意的是,`val` 始终为集合中对应索引的值拷贝,因此它一般只具有只读性质,对它所做的任何修改都不会影响到集合中原有的值(** 译者注:如果 `val` 为指针,则会产生指针的拷贝,依旧可以修改集合中的原值 **)。一个字符串是 Unicode 编码的字符(或称之为 `rune`)集合,因此您也可以用它迭代字符串:
|
||||
要注意的是,`val` 始终为集合中对应索引的值拷贝,因此它一般只具有只读性质,对它所做的任何修改都不会影响到集合中原有的值(**译者注:如果 `val` 为指针,则会产生指针的拷贝,依旧可以修改集合中的原值**)。一个字符串是 Unicode 编码的字符(或称之为 `rune`)集合,因此您也可以用它迭代字符串:
|
||||
|
||||
```
|
||||
for pos, char := range str {
|
||||
@@ -372,4 +372,4 @@ for i, j, s := 0, 5, "a"; i < 3 && j < 100 && s != "aaaaa"; i, j,
|
||||
|
||||
- [目录](directory.md)
|
||||
- 上一节:[switch 结构](05.3.md)
|
||||
- 下一节:[Break 与 continue](05.5.md)
|
||||
- 下一节:[Break 与 continue](05.5.md)
|
||||
|
Reference in New Issue
Block a user