【发布时间】:2021-08-19 20:23:17
【问题描述】:
我的代码
val list1 = getAllCheckingPoints()
val list2 = getselectedCheckingPoints()
说list1属于Type1,list2属于Type2
Type1是一个包含id,name,type,duration的数据类
Type2是一个只包含id和position的数据类
两者都包含匹配的 ID,但只有列表 2 包含位置
所以我创建了一个空列表
var filteredList: List<Type1> = emptyList()
filteredList = list2.flatMap { list2Item->
list1.filter { list1Item ->
list1Item.id == list2Item.id
}
}
我在这里尝试使过滤列表成为 Type1 的列表,其中只有 list1 中存在于 list2 中且与 id 匹配的项目。我被困住了 在这一步之后。
如何使用 list2 中存在的位置值对过滤列表进行排序?
【问题讨论】:
-
如果您可以将其归结为minimal, reproducible example,这将更容易理解。我是否了解您想要对一个列表进行排序,以便其项目以与它们在另一个列表中相同的顺序出现?如果是这样,那么没有出现在另一个列表中的项目呢?你想让那些去哪里?
-
position是Type2的字段还是list2中的对象索引? -
它是一个字段@МихаилНафталь
-
@gidds 请看我更新的帖子。
标签: kotlin