GOLANG接口编程的最佳实践一 (sort.Sort(data Interface ) )
package main
import(
"fmt"
"sort"
"math/rand"
)
//定义一个武当派的结构体
type Wudang struct{
Name string
Age int
Rating int //等级
}
//定义一个Wudang结构切片类型
type Wudangslice []Wudang func (ws Wudangslice) Len() int {
return len(ws)
} func (ws Wudangslice) Less(i,j int) bool {
return ws[i].Age < ws[j].Age
} func (ws Wudangslice) Swap(i,j int) {
ws[i],ws[j] = ws[j],ws[i]
} func main(){
var wulin Wudangslice
for i := 0;i < 8;i++ {
wd := Wudang{
Name : fmt.Sprintf("武当%d号",rand.Intn(10)),
Age:rand.Intn(100),
Rating:rand.Intn(8),
}
wulin = append(wulin,wd)
}
//排序前的顺序
for _ , v:=range wulin{
fmt.Println(v)
}
//调用sort.Sort
sort.Sort(wulin)
fmt.Println("--------排序后-----------")
for _ , v:=range wulin{
fmt.Println(v)
}
}

如果想按照名字或者登记排序,修改
func (ws Wudangslice) Less(i,j int) bool {
return ws[i].Name < ws[j].Name
}

GOLANG接口编程的最佳实践一 (sort.Sort(data Interface ) )的更多相关文章
- .NET API 接口数据传输加密最佳实践
.NET API 接口数据传输加密最佳实践 我们在做 Api 接口时,相信一定会有接触到要给传输的请求 body 的内容进行加密传输.其目的就是为了防止一些敏感的内容直接被 UI 层查看或篡改. 其实 ...
- RESTful接口设计原则/最佳实践(学习笔记)
RESTful接口设计原则/最佳实践(学习笔记) 原文地址:http://www.vinaysahni.com/best-practices-for-a-pragmatic-restful-api 1 ...
- javascript编程的最佳实践推荐
推荐的javascript编程的最佳实践,摘要记录在这里: 可维护的代码保证代码的性能部署代码 1 可维护的代码1.1什么是维护的代码:可理解性——其他人可以接手代码并理解它的意图和一般途径,而无需原 ...
- python高级编程之最佳实践,描述符与属性01
# -*- coding: utf-8 -*- # python:2.x __author__ = 'Administrator' #最佳实践 """ 为了避免前面所有的 ...
- [01] C#网络编程的最佳实践
网络框架的选择 C++语言里面有asio和libuv等网络库, 可以方便的进行各种高效编程. 但是C#里面, 情况不太一样, C#自带的网络API有多种. 例如: Socket TcpStream(同 ...
- 【GoLang】GoLang GOPATH 工程管理 最佳实践
参考资料: MAC下 Intellij IDEA GO语言插件安装及简单案例:http://blog.csdn.net/fenglailea/article/details/53054502 关于wi ...
- Android学习之基础知识十二 — 第二讲:网络编程的最佳实践
上一讲已经掌握了HttpURLConnection和OkHttp的用法,知道如何发起HTTP请求,以及解析服务器返回的数据,但是也许你还没发现,之前我们的写法其实是很有问题的,因为一个应用程序很可能会 ...
- jQuery编程的最佳实践
好像是feedly订阅里看到的文章,读完后觉得非常不错,译之备用,多看受益. 加载jQuery 1.坚持使用CDN来加载jQuery,这种别人服务器免费帮你托管文件的便宜干嘛不占呢.点击查看使用CDN ...
- Golang核心编程
源码地址: https://github.com/mikeygithub/GoCode 第1章 1Golang 的学习方向 Go 语言,我们可以简单的写成 Golang 1.2Golang 的应用领域 ...
随机推荐
- nginx访问日志的几个统计命令
nginx日志中得到访问量最高前10个IP: cat access.log.10 | awk '{a[$1]++} END {for(b in a) print b"\t"a[b] ...
- [转]将西部数据 My Passport Wireless 移动存储连接到任何支持的云存储上
原文标题:对西部数据 My Passport Wireless 移动存储进行 Linux 魔改 原文链接:https://linux.cn/article-8246-1.html 虽然 WD My P ...
- Spring Aop(三)——Pointcut表达式介绍
转发地址:https://www.iteye.com/blog/elim-2395255 3 Pointcut表达式介绍 3.1 表达式类型 标准的Aspectj Aop的pointcut的表达式类型 ...
- Eclipse阿里代码规范插件安装,卸载与使用
使用阿里代码规范插件,我们就可以查看我们写的代码是否规范了 找到阿里代码插件网址: 网址:https://p3c.alibaba.com/plugin/eclipse/update/ 打开我们的网址, ...
- Vuforia笔记1(Vuforia8.0.10与Unity2018.3.6f1)
一丶ARCamera(AR的灵魂) 1.World Center Mode SPECIFIC_TARGET:制定一个物体作为世界中心坐标 FIRST_TARGET:摄像机所照射到的第一个需要识别的目标 ...
- NDK学习笔记-文件的拆分与合并
文件的拆分与合并在开发中经常会用到,上传或是下载的时候都有这样的运用 文件拆分的思路 将文件大小拆分为n个文件 那么,每个文件的大小就是等大小的 如果文件大小被n除不尽,那么就使用n+1个文件来拆分 ...
- thinkphp5相关
THINKPHP5代码风格规范(基于PSR): https://www.jianshu.com/p/e53d26407e68
- nssm设置solr开机启动服务
首先,下载nssm http://www.nssm.cc/download 命令 nssm install solr 然后到服务里启动solr,并设置为自动 Ctrl+Shift+Esc(说明:Esc ...
- XKC's basketball team【线段树查询】
XKC , the captain of the basketball team , is directing a train of nn team members. He makes all mem ...
- [转帖]Windows安全认证是如何进行的?[Kerberos篇]
Windows安全认证是如何进行的?[Kerberos篇] NTLM 的简单看了一下 基本上了解了.. 这个KERBEROS 的看不太懂 感觉说的我也有点迷糊.. 虽然是对称加密的 但是不清不楚的.. ...