Go語言如何像foreach一樣有序遍歷map

2022-01-10 13:47:06 字數 1249 閱讀 7618

目錄go語言的map是無序遍歷的,遍歷乙個map**如下

package main

import (

"fmt"

)func main()

}

我們來執行3次

可以看到每次都是隨機的,如何給乙個map進行排序,並根據我們的的key進行遍歷呢?

比如我們要跟據字典順序來輸出map的內容,怎麼辦?

其實我們可以借助乙個slice來儲存map的key,通過遍歷排序後的slice來達到根據keys遍歷map的效果

package main

import (

"fmt"

"sort"

)func main()

sort.strings(keys)

//再次遍歷

for _, k := range keys

}

再次執行如下,可以看到結果都是一致的

現在這個雖然可以達到給key排序,但是有乙個弊端,就是不能像php中的foreach一樣有序的遍歷

比如如下的php中的foreach**,永遠是按照新增的順序輸出的

<?php 

$map = [

"a" => 1,

"b" => 2,

"d" => 3,

"c" => 4,

];foreach ($map as $k => $v) =" . php_eol;

}

執行結果如下

我們來使用一下

}執行結果如下

這個包可以讓我們像php的foreach一樣high起來,真的是絕了!

以上內容由chenqionghe傾情提供,are you ok?

Go語言學習(一)Go語言變數

總結 此 中需要注意的點是 1 宣告變數時要注意中間的空格不能省略 2 如果 寫的不規範,編譯時會自動調整成規範的格式,比如在編譯前 中的1,2之間沒有空格,但是在編譯後會自動出現 3 在編寫 時,不用每次都刪除hello.exe檔案,因為在編譯main.go檔案時,會自動將其之前的進行覆蓋 第一種...

Go 語言入門一 Go 安裝

本文介紹 go 語言編譯工具的安裝和解除安裝。如果是公升級go工具,則先解除安裝舊版本,在安裝新版本。tar c usr local xzf go version.os arch.tar.gz 將 usr local go bin目錄新增至環境變數 編譯 etc profile或者 home pro...

如何編譯安裝Go語言

注意 以下紅色標示是自己的安裝過程 1 安裝go 語言工具包 第一步 修改環境變數 1 修改環境變數方法 sudo gedit bashrc 2 go的編譯器需要使用三個必須的環境變數和乙個可選的環境變數,您可以將其設定在.bashrc檔案或其他的登陸指令碼中 注意變數 goarch和 goos指明...