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

如何获取Kotlin Map集合中的最后一个键或值

如何获取Kotlin Map集合中的最后一个键或值?

首先要明确:普通Map(比如HashMap)是无序的,不存在“最后一个键/值”的概念。只有使用有序Map实现类(如LinkedHashMap、SortedMap、TreeMap)时,才能按插入顺序或排序顺序获取最后一个元素。

以下是针对有序Map的几种实现方式:

1. 获取最后一个键值对再拆分

利用Kotlin集合扩展函数last()获取最后一个键值对,再分别提取键和值:

val orderedMap = linkedMapOf("a" to 1, "b" to 2, "c" to 3)
val lastEntry = orderedMap.last()
val lastKey = lastEntry.key   // 结果为"c"
val lastValue = lastEntry.value // 结果为3

2. 直接操作keys/values集合

直接对Map的keys或values集合调用last():

val lastKey = orderedMap.keys.last()
val lastValue = orderedMap.values.last()

3. 处理空Map的安全写法

如果Map可能为空,用lastOrNull()替代last(),避免抛出NoSuchElementException:

val lastKeyOrNull = orderedMap.keys.lastOrNull() // 空Map时返回null
val lastValueOrNull = orderedMap.values.lastOrNull()

注意:如果是无序Map(如HashMap),上述方法返回的结果是不确定的,因为它的元素顺序没有固定规则。

内容的提问来源于stack exchange,提问作者Raj Narayanan

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.06 13:15:51