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

Kotlin有序集合中groupBy是否保持分组内元素的稳定顺序?

Kotlin有序集合调用groupBy后分组内元素的顺序稳定性

在Kotlin的有序集合(比如List)上调用groupBy方法时,分组内的元素会严格保持原集合中的出现顺序,不会出现顺序混乱的情况。

拿你给出的代码举例:原列表中值为2的元素在原集合里的出现顺序是索引1、2、6的元素,groupBy会按这个遍历顺序把元素依次添加到键为2的分组列表中,后续调用mapValues提取索引后,得到的结果必然是[1, 2, 6],这个顺序是完全确定的,不存在未定义的情况。

原因很直接:Kotlin的groupBy底层是按原集合的迭代顺序逐个处理元素,每遇到一个元素就将其追加到对应键的分组集合末尾,而有序集合的迭代顺序就是元素的存储顺序,所以分组内的元素顺序和原集合中对应元素的出现顺序完全一致。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.18 11:04:51