拉链,但保留原始收藏品

时间:2019-11-06 08:20:45

标签: kotlin

我有2个收藏集:[11, 22, 33, 44][A, B]。我想像zip那样合并它们,但不要将结果集合截短为最短的集合。所以结果应该是

[11 -> A, 22 -> B, 33 -> null, 44 -> null]

2 个答案:

答案 0 :(得分:3)

如果您不知道哪个集合更大:

(0 until Math.max(first.size, second.size)).map { first.getOrNull(it) to second.getOrNull(it) }

答案 1 :(得分:1)

first.mapIndexed{ index, id -> id to second.getOrNull(index) }