Golang实现一个一维结构体,根据某个字段排序

Go 复制代码
package main

import (
	"fmt"
	"sort"
)

type Person struct {
	Name string
	Age  int
}

func main() {
	// 创建一个一维结构体切片
	people := []Person{
		{"Alice", 25},
		{"Bob", 30},
		{"Charlie", 20},
		{"David", 35},
		{"Eve", 28},
		{"Frank", 32},
	}
	// 根据 Age 字段对一维结构体切片进行倒序排序
	sort.Slice(people, func(i, j int) bool {
		return people[i].Age > people[j].Age
	})
	// 打印排序后的一维结构体切片
	for _, person := range people {
		fmt.Printf("Name: %s, Age: %d\n", person.Name, person.Age)
	}
}

类似php的array_multisort函数

相关推荐
liu****9 分钟前
1.模拟算法
开发语言·c++·算法·1024程序员节
数据村的古老师12 分钟前
Python数据分析实战:基于25年黄金价格数据的特征提取与算法应用【数据集可下载】
开发语言·python·数据分析
孔明兴汉43 分钟前
第一章-第三节-Java开发环境配置
java·开发语言
小王不爱笑1321 小时前
Java 核心知识点查漏补缺(一)
java·开发语言·python
空空kkk1 小时前
Java——类和对象
java·开发语言
沐知全栈开发3 小时前
Python3 集合
开发语言
Jonathan Star3 小时前
用Python轻松提取视频音频并去除静音片段
开发语言·python·音视频
Evand J3 小时前
【自适应粒子滤波MATLAB例程】Sage Husa自适应粒子滤波,用于克服初始Q和R不准确的问题,一维非线性滤波。附下载链接
开发语言·matlab·卡尔曼滤波·自适应滤波·非线性
九江Mgx3 小时前
Go语言实现的简易远程传屏工具:让你的屏幕「飞」起来
golang·截图·传屏
hd51cc4 小时前
C++ 类的学习(四) 继承
开发语言·c++·学习