精校:8.5-8.6

This commit is contained in:
Unknwon
2015-08-04 09:45:07 +08:00
parent 16334f1a92
commit 61b9d15702
3 changed files with 9 additions and 7 deletions

View File

@@ -19,4 +19,4 @@ Golang 编程245386165
|更新日期 |更新内容
|----------|------------------
|2015-08-03|8.4 map 类型的切片
|2015-08-04|8.6 将 map 的键值对调

10
TOC.md
View File

@@ -61,7 +61,9 @@
- 7.5 [切片的复制与追加](eBook/07.5.md)
- 7.6 [字符串、数组和切片的应用](eBook/07.6.md)
- 第8章[Map](eBook/08.0.md)
+ 8.1 [声明、初始化和 make](eBook/08.1.md)
+ 8.2 [测试键值对是否存在及删除元素](eBook/08.2.md)
+ 8.3 [for-range 的配套用法](eBook/08.3.md)
+ 8.4 [map 类型的切片](eBook/08.4.md)
- 8.1 [声明、初始化和 make](eBook/08.1.md)
- 8.2 [测试键值对是否存在及删除元素](eBook/08.2.md)
- 8.3 [for-range 的配套用法](eBook/08.3.md)
- 8.4 [map 类型的切片](eBook/08.4.md)
- 8.5 [map 的排序](eBook/08.5.md)
- 8.6 [将 map 的键值对调](eBook/08.6.md)

View File

@@ -2,7 +2,7 @@
map 默认是无序的,不管是按照 key 还是按照 value 默认都不排序(详见第 8.3 节)。
如果你想为 map 排序,需要将 key或者 value拷贝到一个 slice再对 slice 排序(使用 sort 包,详见第 7.6.6 节),然后可以使用 slice 的 for-range 方法打印出所有的 key 和 value。
如果你想为 map 排序,需要将 key或者 value拷贝到一个切片,再对切片排序(使用 sort 包,详见第 7.6.6 节),然后可以使用切片的 for-range 方法打印出所有的 key 和 value。
下面有一个示例:
@@ -50,7 +50,7 @@ func main() {
sorted:
Key: alpha, Value: 34 / Key: bravo, Value: 56 / Key: charlie, Value: 23 / Key: delta, Value: 87 / Key: echo, Value: 56 / Key: foxtrot, Value: 12 / Key: golf, Value: 34 / Key: hotel, Value: 16 / Key: indio, Value: 87 / Key: juliet, Value: 65 / Key: kili, Value: 43 / Key: lima, Value: 98 / [fangjun@st01-dstream-0001.st01.baidu.com go]$ sz -be sort_map.go
但是如果你想要一个排序的列表你最好使用结构体 slice,这样会更有效:
但是如果你想要一个排序的列表你最好使用结构体切片,这样会更有效:
```go
type struct {