Go語言 map遍歷


1 遍歷順序

Go語言里的map,是不保證遍歷順序的(這一點很好理解)。甚至同樣內容的map,兩次遍歷的順序,也可能不一樣。下面是一個例子

m := map[string]int{"a1": 1,"b2": 10,"c3": 2,} for k, v := range m {fmt.Printf("%s=%d;", k, v)} // c3=2;a1=1;b2=10; println() for k, v := range m {fmt.Printf("%s=%d;", k, v)} // a1=1;b2=10;c3=2;
 

2 遍歷時進行操作

遍歷map的時候,可以對map進行操作(增、刪、改)。如果遍歷的過程中,刪除了某個已經遍歷過的entry,不會有任何問題。如果刪除了某個還未被遍歷到的entry,那么這個entry就不會被遍歷到了。如果遍歷過程中添加了新的entry,這個entry則不一定能在后續被遍歷到


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM