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函数

相关推荐
言乐610 小时前
Python概括后端原理
开发语言·python·django·virtualenv·pygame
@大迁世界10 小时前
JEV RAG:更高效的 RAG 系统解决方案?
开发语言·rust
朝朝辞暮i11 小时前
C++ 第一阶段总结:从零基础到 ROS2 前置语法
开发语言·c++·算法
2601_9628857211 小时前
如何用 Python 回测定投策略(定期定额 DCA)?(和一次性买入对比)
开发语言·人工智能·python
周杰偷奶茶12 小时前
【JavaSE】类和对象基础
java·开发语言
大圣编蚕12 小时前
C语言核心知识复习:预处理、头文件、强制类型转换、错误处理、递归与内存管理
c语言·开发语言
虎大猫猫12 小时前
Python教程——按位取反的原理
开发语言·python
Alice-YUE12 小时前
提示词工程:工业级 Prompt 写法与分层组装
java·开发语言·大模型·prompt·提示词工程·system prompt
弹简特12 小时前
【Java项目-企悦抽】17-抽奖模块02-抽奖接口实现
java·开发语言·状态模式·springboot
HEJOO912 小时前
指针与结构体:C 语言进阶核心详解
c语言·开发语言·网络