在科特林中用重复元素展平列表
flatten list with repeated element in kotlin
我有以下数据class作为数据传输对象。
data class Continent(
val continent: String,
val countries: List<String>
)
所以 JSON 响应如下所示。
{
"content": [
{
"continent": "Europe",
"countries": [
"France",
"Germany"
]
}
]
}
然而,我想做的是:
{
"content": [
{
"continent": "Europe",
"country": "France"
},
{
"continent": "Europe",
"country": "Germany"
}
]
}
我想肯定有一些 kotlin 集合函数可以应用。
由于我在第一个代码块中写的dto无法审核,所以我必须在服务层应用收集功能并相应地做出响应dto。
你能告诉我吗?提前致谢。
data class Country(
val continent: String,
val country: String
)
fun List<ContinentResponse>.toCountries(): List<Country> =
flatMap { r -> r.countries.map { country -> Country(r.continent, country) } }
我有以下数据class作为数据传输对象。
data class Continent(
val continent: String,
val countries: List<String>
)
所以 JSON 响应如下所示。
{
"content": [
{
"continent": "Europe",
"countries": [
"France",
"Germany"
]
}
]
}
然而,我想做的是:
{
"content": [
{
"continent": "Europe",
"country": "France"
},
{
"continent": "Europe",
"country": "Germany"
}
]
}
我想肯定有一些 kotlin 集合函数可以应用。 由于我在第一个代码块中写的dto无法审核,所以我必须在服务层应用收集功能并相应地做出响应dto。
你能告诉我吗?提前致谢。
data class Country(
val continent: String,
val country: String
)
fun List<ContinentResponse>.toCountries(): List<Country> =
flatMap { r -> r.countries.map { country -> Country(r.continent, country) } }