> map中的key可以為bool、數字、string、指針、channel、還可以是接口、結構體、數組,不能是slice、map、function
var 變量名 map[key類型][值類型]
map聲明后沒有空間,需要通過make分配空間
后進的變量先輸出
```
//方式一,先聲明,再make
var a map[string]string
a = make(map[string]string,10)//分配10個
a["no1"] = "PHP"
//方式二,聲明直接make
var b = make(map[string]string)
//方式三,聲明直接賦值
var c map[string]string = map[string]string{
"no4":"浙江",//必須加逗號
}
var c = map[string]string{
"no4": "浙江",
}
c["no5"] = "福建"
//嵌套map
map1 := make(map[string]map[string]string)
map1["a1"] = make(map[string]string,4)
map1["a1"]["a2"] = "s1"
```
*****
> map刪
刪除元素`delete(map,key)`
刪除所有key,遍歷所有的key并刪除 或 make一個新的空間
> map判斷是否存在
```
val, ok := map["no1"] //val 值 ok 是否存在
map["no1"] != nil //2中方法均可
```
> map遍歷 for-range,類似PHP foreach
> map長度len函數
> 切片的數據類型是切片,類似php返回數據集
- 數據類型
- 數組array
- 切片slice
- 字符串string
- map
- 結構體struct
- 方法func
- 匿名結構體(繼承)
- 字段別名
- 接口interface
- 常量
- 基礎語法
- 循環for
- 遍歷
- 函數func
- defer
- 異常處理error
- 訪問范圍
- 包
- 類型斷言
- 文件
- 打開文件
- 讀取文件
- 寫文件
- 判斷是否存在
- 拷貝文件
- JSON
- 序列化
- 反序列化
- 命令行
- 雜項
- Windows下配置加速
- 相關鏈接
- 占位符
- 隨機數rand
- 單元測試
- goroutine
- 并發和并行
- 協程和主線程
- MPG模式
- 設置CPU數量
- 全局互斥鎖
- 管道
- 示例1
- 示例2
- select
- 異常捕獲
- 反射
- 示例
- 示例-改變值
- 網絡編程
- TCP編程
- 示例一
- redis