學習筆記根據 無聞
go語言基礎教程 整理
package main
import (
"fmt"
"sort"
)func main()
// 普通建立方式
func test1()
fmt.println(m) // map
}// 使用make關鍵字建立
func test2()
// 直接宣告和賦值建立
func test3()
// 使用更簡單的方式
func test4()
func test5()
// 複雜型別map
func test6()
// 使用多返回值來判斷map是否被初始化
func test7()
m[2][1] = "ok"
a, ok = m[2][1]
fmt.println(a, ok) // ok true // 此處被正確初始化了
}// 迭代操作
func test8()
for i,v:=range s1
fmt.println("----")
m1 := make(map[int]string)
m1[1] = "hello"
m1[2] = "world"
for k,v:=range m1
/*// 輸出結果為:
0 11 2
2 3----
1 hello
2 world
*/}// 以map為值的slice型別
func test9()
fmt.println("----")
fmt.println(sm)
/*map[0:ok]
map[1:ok]
----
[map map]
*/// 通過上面的執行結果可知, v是map中乙個索引的拷貝,改變v,並不改變map,slice同樣是這樣。
}func test10()
fmt.println("----")
fmt.println(sm)
/*map[0:ok]
map[1:ok]
----
[map[0:ok] map[1:ok]]
*/}// 對map進行間接排序,map是無序的,通過key來排序
func test11() // 建立乙個map
s := make(int,len(m)) // 建立乙個slice
i :=0
for k,_ := range m
sort.ints(s) // 對s進行排序
fmt.println(s)
fmt.println("----")
// 根據拍好序的k,取出對應map中的值,從而達到對map的排序
for _, v := range s
/*[1 2 3 4 5]
----ab
cde*/
}
go語言學習筆記 map
理解 map是由一組無序的鍵key值value對集合的內建型別,可以通過鍵來獲取對應的值,map和slices一樣,也是引用型別 注意 map之間不能使用 操作符來判斷 建立map 語法 map type of key type of value var mymap map string int n...
go語言學習筆記 map
go語言內建有map這種資料結構,它由無序的鍵值對組成,跟大部分語言中的map用法非常相似。它的鍵不能由可變型別 引用語義 的結構型別擔當,如切片 陣列 函式等等。map只有len,沒有cap。我們可以直接定義,或者通過make函式建立,通過make函式建立時,可以指定容量。package main...
Go語言學習筆記 map
map是雜湊表的引用,map的型別為map k v,k和v是字典的鍵和值對應的資料型別,map中所有的鍵都擁有相同的資料型別,同時所有的值都擁有相同的資料型別,但鍵的型別和值的型別不一定相同 鍵的型別k必須是可以通過操作符 來進行比較的資料型別,所以map可以檢測某乙個鍵是否已經存在 ages ma...