新Sir

导航

 
package main

import (
	"fmt"
	"sort"
)

type data struct {
	Key string
	val int
}

func main() {

	m := make(map[string]int)
	m["aone"] = 1
	m["tree"] = 3
	m["btwo"] = 2
	m["five"] = 5
	m["ctcen"] = 10
	m["seven"] = 7

	var datas []data

	for k, v := range m {
		datas = append(datas, data{
			k,
			v,
		})
	}
	//
	sort.Slice(datas, func(i, j int) bool {
		// 可以对key 进行排序,也可以根据 val 进行排序
		//return datas[i].Key < datas[j].Key

		//按照 val 进行排序
		return datas[i].val < datas[j].val

	})

	fmt.Println(datas)

}

/*

总结,其实这个就是利用了 go 语言 切片 本身对  排序的封装的功能,sort.Slice 的功能的应用,
*/

  

posted on 2024-10-25 19:22  新Sir  阅读(3)  评论(0编辑  收藏  举报