Golang - 从地图上获取一部分密钥 [英] Golang - Getting a slice of keys from a map

查看:109
本文介绍了Golang - 从地图上获取一部分密钥的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

有没有更简单/更好的方法从Go中的地图中获取一部分键?

Is there any simpler/nicer way of getting a slice of keys from a map in Go?

目前我正在迭代地图和复制到一个切片的关键:

Currently I am iterating over the map and copying the keys to a slice:

i := 0
keys := make([]int, len(mymap))
for k := range mymap {
    keys[i] = k
    i++
}


推荐答案

例如,

For example,

package main

func main() {
    mymap := make(map[int]string)
    keys := make([]int, 0, len(mymap))
    for k := range mymap {
        keys = append(keys, k)
    }
}

为了在Go中保持高效,重要的是尽量减少内存分配。

To be efficient in Go, it's important to minimize memory allocations.

这篇关于Golang - 从地图上获取一部分密钥的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆