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

Kotlin如何使用另一个列表的元素过滤列表?

Kotlin列表过滤:保留ID在指定列表中的元素

要过滤posts列表,只保留那些id存在于ids列表中的Post对象,最简单的写法是直接用in操作符或者contains方法:

val output = posts.filter { it.id in ids }
// 等价写法
val output = posts.filter { ids.contains(it.id) }

如果你的ids列表元素数量比较多,或者需要频繁执行这个过滤操作,推荐先把ids转成HashSet——因为List.contains()的时间复杂度是O(n),而HashSet.contains()是O(1),能大幅提升查找效率:

val idSet = ids.toHashSet()
val output = posts.filter { idSet.contains(it.id) }

这样就能得到所有符合条件的Post对象了。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.14 05:01:35