You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Kotlin如何查找类属性的最小/最大值并返回对应的实例对象

实现方法

你可以直接借助Kotlin标准库的集合操作函数完成需求,只需要两步:

  1. 将3个City实例存入列表
  2. 调用maxByOrNull、minByOrNull方法,指定按degrees属性比较即可直接拿到对应对象

示例代码如下:

// 把待比较的对象存入列表
val cityList = listOf(city1, city2, city3)

// 取degrees属性最大的City对象
val maxDegreeCity = cityList.maxByOrNull { it.degrees }
// 取degrees属性最小的City对象
val minDegreeCity = cityList.minByOrNull { it.degrees }

// 验证输出
println("最高温城市:${maxDegreeCity?.name},温度:${maxDegreeCity?.degrees}")
println("最低温城市:${minDegreeCity?.name},温度:${minDegreeCity?.degrees}")

运行后输出结果:

最高温城市:city3,温度:30
最低温城市:city1,温度:10

补充说明

  • 如果你使用的是较早版本的Kotlin,也可以使用已经废弃的maxBy/minBy方法,用法完全一致,区别是旧方法在列表为空时会抛出异常,而*OrNull版本会返回null,安全性更高。
  • 如果列表中存在多个degrees值相同的最大/最小值对象,方法会返回第一个匹配到的实例。

内容的提问来源于stack exchange,提问作者Dark Light

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.30 05:42:03