我得到了下一个数据结构:
data class Store (
val name: String,
val products: Set<Product>
)
data class Product (
val name: String,
)
val stores: List<Stores>
val productMap = Map<Product, Set<Store>> = ?
如何获得一个地图,其中键是产品,值是商店的集合?
您可以groupByTo
在每个商店的每个产品项目上使用来对元素进行分组:
val stores: List<Store> = listOf(
Store("S1", setOf(Product("S1P1"), Product("S1P2"))),
Store("S2", setOf(Product("S2P1"), Product("S2P2")))
)
val productMap: MutableMap<in Product, MutableList<Store>> = mutableMapOf()
stores.forEach { store ->
store.products.groupByTo(productMap, { it }, { store })
}
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句