修正一些小错误和语言不通顺的地方 (#274)

* Update 07.3.md

* Update 07.3.md

* Update 07.6.md

* fix few problems
This commit is contained in:
王耀
2016-08-25 11:45:39 +08:00
committed by 无闻
parent d40ca54c10
commit 6e9d78dac9
5 changed files with 15 additions and 15 deletions

View File

@@ -72,9 +72,9 @@ map 的初始化:`var map1[keytype]valuetype = make(map[keytype]valuetype)`。
或者简写为:`map1 := make(map[keytype]valuetype)`
上面例子中的 mapCreated 就是用这种方式创建的:`mapCreated := make(map[string]float)`
上面例子中的 mapCreated 就是用这种方式创建的:`mapCreated := make(map[string]float32)`
相当于:`mapCreated := map[string]float{}`
相当于:`mapCreated := map[string]float32{}`
mapAssigned 也是 mapList 的引用,对 mapAssigned 的修改也会影响到 mapLit 的值。
@@ -83,12 +83,12 @@ mapAssigned 也是 mapList 的引用,对 mapAssigned 的修改也会影响到
**注意** 如果你错误的使用 new() 分配了一个引用对象,你会获得一个空引用的指针,相当于声明了一个未初始化的变量并且取了它的地址:
```go
mapCreated := new(map[string]float)
mapCreated := new(map[string]float32)
```
接下来当我们调用:`mapCreated["key1"] = 4.5` 的时候,编译器会报错:
invalid operation: mapCreated["key1"] (index of type *map[string]float).
invalid operation: mapCreated["key1"] (index of type *map[string]float32).
为了说明值可以是任意类型的,这里给出了一个使用 `func() int` 作为值的 map
@@ -115,7 +115,7 @@ func main() {
和数组不同map 可以根据新增的 key-value 对动态的伸缩,因此它不存在固定长度或者最大限制。但是你也可以选择标明 map 的初始容量 `capacity`,就像这样:`make(map[keytype]valuetype, cap)`。例如:
```go
map2 := make(map[string]float, 100)
map2 := make(map[string]float32, 100)
```
当 map 增长到容量上限的时候,如果再增加新的 key-value 对map 的大小会自动加 1。所以出于性能的考虑对于大的 map 或者会快速扩张的 map即使只是大概知道容量也最好先标明。