修改原书中关于map key的不清楚叙述 fix #267 (#398)

This commit is contained in:
Lynn
2017-10-13 04:11:34 -05:00
committed by 无闻
parent 88dc3bc1cb
commit 085943543d

View File

@@ -15,7 +15,7 @@ var map1 map[string]int
未初始化的 map 的值是 nil。
key 可以是任意可以用 == 或者 != 操作符比较的类型,比如 string、int、float。所以数组、切片和结构体不能作为 key但是指针和接口类型可以。如果要用结构体作为 key 可以提供 `Key()``Hash()` 方法,这样可以通过结构体的域计算出唯一的数字或者字符串的 key。
key 可以是任意可以用 == 或者 != 操作符比较的类型,比如 string、int、float。所以数组、切片和结构体不能作为 key (译者注:含有数组切片的结构体不能作为 key只包含内建类型的 struct 是可以作为 key 的),但是指针和接口类型可以。如果要用结构体作为 key 可以提供 `Key()``Hash()` 方法,这样可以通过结构体的域计算出唯一的数字或者字符串的 key。
value 可以是任意类型的;通过使用空接口类型(详见第 11.9 节),我们可以存储任意值,但是使用这种类型作为值时需要先做一次类型断言(详见第 11.3 节)。