在计算机编程中,map
是一种常用的数据结构,用于存储键值对,遍历 map
的方式有多种,下面将详细介绍几种常见的方式:
1、使用 for...range
循环遍历
m := map[string]int{ "apple": 5, "banana": 3, "orange": 2, } for key, value := range m { fmt.Println("Key:", key) fmt.Println("Value:", value) }
这种方式会按照 map
中的键值对顺序进行遍历,每次迭代都会返回一个键值对,可以通过解构赋值获取到键和值。
2、使用 for...key
循环遍历
m := map[string]int{ "apple": 5, "banana": 3, "orange": 2, } for key := range m { fmt.Println("Key:", key) }
这种方式只会遍历 map
的键,不会返回对应的值,如果需要同时获取键和值,可以使用第一种方式。
3、使用 for...value
循环遍历
m := map[string]int{ "apple": 5, "banana": 3, "orange": 2, } for value := range m { fmt.Println("Value:", value) }
这种方式只会遍历 map
的值,不会返回对应的键,如果需要同时获取键和值,可以使用第一种方式。
4、使用索引遍历(仅适用于字符串类型的 map
)
m := map[string]int{ "apple": 5, "banana": 3, "orange": 2, } keys := make([]string, len(m)) i := 0 for key := range m { keys[i] = key i++ } for _, key := range keys { fmt.Println("Key:", key) }
这种方式会先创建一个与 map
长度相同的字符串切片,然后通过索引遍历字符串切片来获取键的顺序,需要注意的是,这种方式只适用于字符串类型的 map
,对于其他类型的 map
,无法直接使用索引遍历。
最新评论
本站CDN与莫名CDN同款、亚太CDN、速度还不错,值得推荐。
感谢推荐我们公司产品、有什么活动会第一时间公布!
我在用这类站群服务器、还可以. 用很多年了。