请告诉我如何在这样一个数据 struct (为了更好地理解而简化)中将实体的所有子项合并到一个列表中:
fun main() {
val listOfEntities = listOf(
Entity(
name = "John",
entities = listOf(
Entity(
name = "Adam",
entities = listOf()
),
Entity(
name = "Ivan",
entities = listOf(
Entity(
name = "Henry",
entities = listOf(
Entity(
name = "Kate",
entities = listOf(
Entity(
name = "Bob",
entities = listOf()
)
)
)
)
)
)
)
)
)
)
val result = listOfEntities.flatMap { it.entities }.map { it.name }
println(result)
}
data class Entity(
val name: String,
val entities: List<Entity>
)
我希望看到以下结果:
[John, Adam, Ivan, Henry, Kate, Bob]
我try 使用flatMap,但没有达到预期的效果.
提前谢谢!