新聞中心
map 的遍歷過(guò)程使用 for range 循環(huán)完成,代碼如下:

在瑤海等地區(qū),都構(gòu)建了全面的區(qū)域性戰(zhàn)略布局,加強(qiáng)發(fā)展的系統(tǒng)性、市場(chǎng)前瞻性、產(chǎn)品創(chuàng)新能力,以專注、極致的服務(wù)理念,為客戶提供成都網(wǎng)站建設(shè)、成都網(wǎng)站設(shè)計(jì) 網(wǎng)站設(shè)計(jì)制作定制網(wǎng)站建設(shè),公司網(wǎng)站建設(shè),企業(yè)網(wǎng)站建設(shè),品牌網(wǎng)站設(shè)計(jì),全網(wǎng)營(yíng)銷推廣,成都外貿(mào)網(wǎng)站建設(shè),瑤海網(wǎng)站建設(shè)費(fèi)用合理。
scene := make(map[string]int)
scene["route"] = 66
scene["brazil"] = 4
scene["china"] = 960
for k, v := range scene {
fmt.Println(k, v)
}遍歷對(duì)于Go語(yǔ)言的很多對(duì)象來(lái)說(shuō)都是差不多的,直接使用 for range 語(yǔ)法即可,遍歷時(shí),可以同時(shí)獲得鍵和值,如只遍歷值,可以使用下面的形式:
for _, v := range scene { 將不需要的鍵使用_改為匿名變量形式。
只遍歷鍵時(shí),使用下面的形式:
for k := range scene { 無(wú)須將值改為匿名變量形式,忽略值即可。
注意:遍歷輸出元素的順序與填充順序無(wú)關(guān),不能期望 map 在遍歷時(shí)返回某種期望順序的結(jié)果。
如果需要特定順序的遍歷結(jié)果,正確的做法是先排序,代碼如下:
scene := make(map[string]int)
// 準(zhǔn)備map數(shù)據(jù)
scene["route"] = 66
scene["brazil"] = 4
scene["china"] = 960
// 聲明一個(gè)切片保存map數(shù)據(jù)
var sceneList []string
// 將map數(shù)據(jù)遍歷復(fù)制到切片中
for k := range scene {
sceneList = append(sceneList, k)
}
// 對(duì)切片進(jìn)行排序
sort.Strings(sceneList)
// 輸出
fmt.Println(sceneList)代碼輸出如下:
[brazil china route]
代碼說(shuō)明如下:
- 第 1 行,創(chuàng)建一個(gè) map 實(shí)例,鍵為字符串,值為整型。
- 第 4~6 行,將 3 個(gè)鍵值對(duì)寫入 map 中。
- 第 9 行,聲明 sceneList 為字符串切片,以緩沖和排序 map 中的所有元素。
- 第 12 行,將 map 中元素的鍵遍歷出來(lái),并放入切片中。
- 第 17 行,對(duì) sceneList 字符串切片進(jìn)行排序,排序時(shí),sceneList 會(huì)被修改。
- 第 20 行,輸出排好序的 map 的鍵。
sort.Strings 的作用是對(duì)傳入的字符串切片進(jìn)行字符串字符的升序排列,排序接口的使用將在后面的章節(jié)中介紹。
網(wǎng)頁(yè)題目:創(chuàng)新互聯(lián)GO教程:Go語(yǔ)言遍歷map(訪問(wèn)map中的每一個(gè)鍵值對(duì))
網(wǎng)頁(yè)網(wǎng)址:http://fisionsoft.com.cn/article/cdsedec.html


咨詢
建站咨詢
