How to sort a map by key in Go

1 Answer

0 votes
// Sorted Iteration
// Go maps are unordered, we sort the keys manually

package main

import (
    "fmt"
    "sort"
)

func main() {
    dict := map[string]int{
        "Bob":     17,
        "Alice":   10,
        "Marley":  23,
        "Charlie": 36,
    }

    keys := make([]string, 0, len(dict))
    for key := range dict {
        keys = append(keys, key)
    }
    
    sort.Strings(keys)
    
    for _, key := range keys {
        fmt.Println(key, dict[key])
    }

}



/*
run:

Alice 10
Bob 17
Charlie 36
Marley 23

*/

 



answered Mar 22 by avibootz

Related questions

1 answer 207 views
207 views asked Nov 4, 2020 by avibootz
1 answer 240 views
240 views asked Nov 4, 2020 by avibootz
1 answer 195 views
195 views asked Mar 15, 2020 by avibootz
3 answers 418 views
1 answer 170 views
1 answer 183 views
...