婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁 > 知識庫 > golang使用sort接口實現排序示例

golang使用sort接口實現排序示例

熱門標簽:電梯外呼訪客系統 百度地圖標注搜索關鍵詞 谷歌便利店地圖標注 成都呼叫中心外呼系統平臺 ?兓? 電銷機器人可以補救房產中介嗎 浙江人工智能外呼管理系統 騰訊外呼系統價格 最短的地圖標注

本文實例講述了golang使用sort接口實現排序的方法。分享給大家供大家參考,具體如下:

今天看見群里再討論排序的sort.Interface的實現,有童鞋一直搞不定,我就上手了一下,哦耶搞定了,代碼放在這里.

其實很簡單sort.Interface借口有三個方法,給自己的struct實現這三個方法,然后用將自己的結構體傳給sort.Sort方法就排序完成.

當然sort包也有幾個常用的方法sort.Float64Slice sort.IntSlise sort.StringSlise,呵呵

復制代碼 代碼如下:
package main
import (
    "fmt"
    "sort"
)
type MapSorter []Item
type Item struct {
    Key string
    Val int64
}
func NewMapSorter(m map[string]int64) MapSorter {
    ms := make(MapSorter, 0, len(m))
    for k, v := range m {
        ms = append(ms, Item{k, v})
    }
    return ms
}
func (ms MapSorter) Len() int {
    return len(ms)
}
func (ms MapSorter) Less(i, j int) bool {
    return ms[i].Val ms[j].Val // 按值排序
    //return ms[i].Key ms[j].Key // 按鍵排序
}
func (ms MapSorter) Swap(i, j int) {
    ms[i], ms[j] = ms[j], ms[i]
}
func main(){
    m  := map[string]int64 {
        "e": 10,
        "a": 2,
        "d": 15,
        "c": 8,
        "f": 1,
        "b": 12,
    }
    ms := NewMapSorter(m)
    sort.Sort(ms)
    for _, item := range ms {
        fmt.Printf("%s:%d\n", item.Key, item.Val)
    }
}

希望本文所述對大家Go語言程序設計有所幫助。

您可能感興趣的文章:
  • Go 語言中的空接口(推薦)
  • Go語言使用swagger生成接口文檔的方法
  • 淺談django不使用restframework自定義接口與使用的區別
  • 使用Django開發簡單接口實現文章增刪改查
  • Golang 使用接口實現泛型的方法示例
  • Django使用AJAX調用自己寫的API接口的方法
  • golang基礎之Interface接口的使用
  • golang中的空接口使用詳解

標簽:眉山 宜昌 七臺河 邢臺 盤錦 雅安 紹興 上海

巨人網絡通訊聲明:本文標題《golang使用sort接口實現排序示例》,本文關鍵詞  golang,使用,sort,接口,實現,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《golang使用sort接口實現排序示例》相關的同類信息!
  • 本頁收集關于golang使用sort接口實現排序示例的相關信息資訊供網民參考!
  • 推薦文章
    主站蜘蛛池模板: 安宁市| 神农架林区| 乐都县| 清河县| 安国市| 封开县| 文安县| 夏津县| 桐城市| 莲花县| 孙吴县| 安陆市| 油尖旺区| 九寨沟县| 桦南县| 社旗县| 苏尼特左旗| 虹口区| 霍邱县| 通化市| 巢湖市| 多伦县| 开封县| 兴和县| 建昌县| 台江县| 同仁县| 舒兰市| 永靖县| 黑龙江省| 阳春市| 济阳县| 凤山市| 通海县| 闵行区| 襄垣县| 高尔夫| 子洲县| 中宁县| 马山县| 昌邑市|