<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                合規國際互聯網加速 OSASE為企業客戶提供高速穩定SD-WAN國際加速解決方案。 廣告
                [TOC] map是一種 **無序** 的基于 **key-value** 的數據結構,Go語言中的map是 **引用** 類型,必須初始化才能使用。 Golang語法map定義語法: ```go map[keyType]valueType ``` ## map定義 ```go // 方法一 var m1 = map[string]string{ "name": "jiaxzeng", "age": "18", } fmt.Printf("m1: %v\n", m1) // 簡單聲明 m2 := map[string]string{ "name": "jiaxzeng", "age": "18", } fmt.Printf("m2: %v\n", m2) // 方法二 var m3 = make(map[string]string) m3["name"] = "jiaxzeng" m3["age"] = "18" fmt.Printf("m3: %v\n", m3) // 簡單聲明 m4 := make(map[string]string) m4["name"] = "jiaxzeng" m4["age"] = "18" fmt.Printf("m4: %v\n", m4) ``` ## 遍歷map ```go m5 := make(map[string]string) m5["name"] = "jiaxzeng" m5["gender"] = "male" m5["nationality"] = "China" for key, value := range m5 { fmt.Printf("%s: %s\n", key, value) } // 運行結果: // name: jiaxzeng // gender: male // nationality: China ``` ## 判斷map中某個鍵值是否存在 >[info] map根據鍵取值,有兩個返回值。分別是鍵的值及是否存在。第二參數返回的布爾值。 ```go value, ok := m5["names"] if ok == false { fmt.Println("The key does not exist") } else { fmt.Printf("value: %v\n", value) } ``` ## map增加鍵 ```go // 增加key m5["age"] = "22" fmt.Printf("m5: %v\n", m5) ``` ## map刪除鍵 使用delete()內建函數從map中刪除一組鍵值對 ```go delete(m5, "name") fmt.Printf("m5: %v\n", m5) ``` ## map常用的類型 map常用的類型 - map[string]string :key和value都是字符串 - map[string][]Type :key是字符串,value是切片 - []map[string]string : 切片的元素是映射map ### map[string]string 上面的示例都是 map[string]string 這里不演示了,請參考上面的例子即可。 ### map[string][]Type ```go m6 := make(map[string][]string) m6["廣東"] = []string{"廣州", "深圳", "珠海"} m6["山東"] = []string{"濟南", "淄博", "青島"} for province, citys := range m6 { fmt.Printf("%s: ", province) for i, city := range citys { if i == len(citys)-1 { fmt.Printf("%v", city) } else { fmt.Printf("%v、", city) } } fmt.Println("") } // 運行結果: // 廣東: 廣州、深圳、珠海 // 山東: 濟南、淄博、青島 ``` ### []map[string]string ```go // []map[string]string a1 := make([]map[string]string, 2, 5) a1[0] = map[string]string{ "name": "jiaxzeng", "gender": "male", "nationality": "China", } a1[1] = map[string]string{ "name": "xiaodunan", "gender": "female", "nationality": "China", } for _, v := range a1 { fmt.Println(v) } // 運行結果: // map[gender:male name:jiaxzeng nationality:China] // map[gender:female name:xiaodunan nationality:China] ```
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看