I think this should be it:
val movesWithMetaDataList = pokemonWithMovesAndMetaData.moves
.flatMap { move ->
pokemonWithMovesAndMetaData.pokemonMoveMetaData
.filter { it.moveName == move.name }
.map { PokemonMoveWithMetaData(it, move) }
}
For each move I find the metadata for that move using filter
, and then I use map
to create PokemonMoveWithMetaData
out of those. The flatMap
function will flatten the lists created for each move/metadata-pair back into a single resulting list.
与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…