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]
相关推荐
m0_3807438738 分钟前
为 OpenAI 兼容接口配置教程
开发语言·python·node.js
凤山老林1 小时前
Spring Boot 3.x AOT 编译实战:从原理、踩坑到生产落地
java·spring boot·后端
博傅1 小时前
Spring 核心原理
java·后端·spring
重生之我是Java开发战士1 小时前
【Java EE】事务与事务的传播机制
数据库·java-ee
yurenpai(27届找实习中)1 小时前
从零读懂 AI 智能客服(一):模块职责与 SSE 聊天链路(后端架构)
java·人工智能·架构·langchain4j
万邦科技Lafite1 小时前
阿里巴巴拍立淘按图搜索商品API返回值实践:提升用户购物满意度的关键措施
开发语言·api·开放api·电商开放平台·京东开放平台
陈皮波比茶2 小时前
Swagger
java
呆呆小孩2 小时前
零基础学 MySQL(上):从建库建表到增删改查,一篇搭好 SQL 基础
android·sql·mysql
catchadmin2 小时前
NativePHP v4 让 Blade 构建原生 iOS 与 Android 界面
android·ios·ai·php
小闫BI设源码2 小时前
Elasticsearch面试必看:如何让客户端精准选择节点高效执行请求?
java·elasticsearch·面试宝典·深入解析