kotlin - 在 Kotlin 中使用列表进行 setOf 过滤
问题描述
我正在尝试通过另一个值列表在列表中进行过滤
我想做这个
selectedAreasList = ListOf(1,2,3)
initialItemProductList.filter { it.areaId in setOf(selectedAreasList) }
反而
initialItemProductList.filter { it.areaId in setOf(1,2,3) }
因为我不知道我的清单会有多少项目
解决方案
不要在列表上使用,而是使用为所有s定义setOf
的现有toSet
函数:Sequence
selectedAreasList = listOf(1, 2, 3)
// make a set before the filter to avoid repeatedly making a set
selectedAreasSet = selectedAreasList.toSet()
initialItemProductList.filter { id.areaId in selectedAreasSet }
推荐阅读
- tensorflow2.0 - Keras 回调如何在使用 tensorflow 2.0 的分布式训练中执行
- javascript - Javascript-将字典转换为对象列表
- python - 处理 csv 文件中不同格式的时间戳
- ios - Apple App Store Connect:简单的防伪环保
- html - 将 MPEG-4 编解码器转换为 H.264 以使用 Flask 播放
- python - 由于 addr+1 未附加导致列表索引超出范围的问题
- javascript - 无法在nodejs es6字符串的url中加载动态变量值
- r - Rmd 不会在 RStudio 中编织
- c++11 - 为什么c++11 unordered_multimap中有这么多桶?
- wpf - Xaml 中的 WPF .Net Core 3.0 映射语言基元类型