(二十九)golang--map

map:是key-value數據結構,又稱爲字段或者關聯數組,相似其它編程語言的集合;golang

基本語法:var 名稱 map[鍵類型]值類型編程

  • key的類型能夠是:bool、數字、string、指針、管道,還能夠是包含前面幾個類型的接口、結構體、數組;(一般爲Int、string)
  • value的類型基本和key同樣;

申明:數組

  • var a map[string]string
  • var a map[string]int
  • var a map[int]string
  • var a map[string]map[string]string
  • 申明是不會分配內存的,初始化須要make,分配內存後才能被賦值和使用;
    a = make(map[int]int, 0)

使用方式:數據結構

  • var a map[int]int
    a = make(map[int]int,0)
  • a := make(map[int]int)
  • a := map[int]int{
      1:2,
      2:3,
    }

 

 map的增刪改查:app

 map的遍歷:編程語言

 map的長度:用len統計有多少對key-valueide

 map的切片:(動態增長map),通常而言,初始化的切片的長度是有必定長度的,要想再增長,能夠用append函數  
函數

 map排序:spa

  • golang中沒有一個專門的方法針對map的key排序;
  • golang中的map默認是無序的;
  • golang中map的排序,是先對key進行排序,而後根據key遍歷輸出便可;(我如今的版本里面map裏面是有序的了)

 

 map的使用細節:指針

  • map是引用類型,在一個函數接收map,修改後,會直接影響到原來的map
  • map的容量達到後,要想再增長map,會自動擴容;
  • map的value常用struct類型,更適合管理複雜的數據
     
相關文章
相關標籤/搜索