按字母顺序获取地图中的键的简单方法

2024-04-09

在 Go 中,让映射中的键按字母顺序排序的最简单方法是什么?这是我能做到的最短方法:

package main

import "container/vector"
import "fmt"
import "sort"

func main() {
    m := map[string]string {"b":"15", "z":"123123", "x":"sdf", "a":"12"}
    var keys vector.StringVector;
    for k,_ := range ( m ) {
            keys.Push(k)
    }
    sort.Sort( &keys )
    fmt.Printf("%v\n", keys)
}

您正在使用 StringVector 对字符串数组进行排序。为了最大限度地减少开销,您可以对字符串数组进行排序。

package main

import (
    "fmt"
    "sort"
)

func main() {
    m := map[string]string{"b": "15", "z": "123123", "x": "sdf", "a": "12"}
    mk := make([]string, len(m))
    i := 0
    for k, _ := range m {
        mk[i] = k
        i++
    }
    sort.Strings(mk)
    fmt.Println(mk)
}

Output:

[a b x z]
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

按字母顺序获取地图中的键的简单方法 的相关文章

随机推荐