Kotlin 面向对象 - 枚举排序

Kotlin 枚举排序

  1. 基本排序
kotlin 复制代码
enum class Priority {
    LOW,
    MEDIUM,
    HIGH,
    URGENT
}
kotlin 复制代码
val priorities = listOf(Priority.HIGH, Priority.LOW, Priority.URGENT, Priority.MEDIUM)

println("排序前:" + priorities)

val sortedPriorities = priorities.sorted()

println("排序后:" + sortedPriorities)
复制代码
# 输出结果

排序前:[HIGH, LOW, URGENT, MEDIUM]
排序后:[LOW, MEDIUM, HIGH, URGENT]
  1. 自定义排序
kotlin 复制代码
enum class Status(val code: Int, val description: String) {
    PENDING(1, "待处理"),
    APPROVED(3, "已批准"),
    REJECTED(2, "已拒绝")
}
kotlin 复制代码
val sortedByCode = Status.values().sortedBy { it.code }

println(sortedByCode)
复制代码
# 输出结果

[PENDING, REJECTED, APPROVED]
相关推荐
2501_944521592 小时前
Ramda 跨端三方库仓颉适配全流程
开发语言·javascript·flutter·php
行思理2 小时前
go语言学习难度及适合学习的人群
开发语言·学习·golang
wangchunyu1144 小时前
JAVA CompletableFuture异步编程实战
java·开发语言·python
paopaokaka_luck5 小时前
流浪动物救助与收养系统(DeepSeek AI对话、 ECharts多维分析、救助流程衔接、领养与回访衔接、 捐赠确认与公示、志愿者协作)
java·前端·javascript·人工智能·mysql·echarts·推荐算法
Thomas.Sir5 小时前
第9课:SpringBoot4.x Web开发基础:WebMvc自动配置、静态资源、请求参数接收
java·spring boot
程序 代码狂人5 小时前
切片表与分区表的区别(数据开发面试版)
java·大数据·开发语言·数据仓库·算法
警醒与鞭策6 小时前
Codex桌面版与Claude桌面版使用设置
android·unity·ai·性能优化
2501_944521596 小时前
Deepmerge 跨端三方库仓颉适配全流程
java·python·eclipse·github
meiying88386 小时前
快递单号批量查询Python脚本:从手动到自动化的完整实现
开发语言·python·自动化
@大迁世界7 小时前
告别 Go,拥抱 Rust
开发语言·golang·rust