将配对的kotlin列表转换为Pair.first的列表

时间:2018-07-24 23:30:38

标签: list kotlin

我试图习惯Kotlin中的惯用语和快捷方式,我想知道是否有任何方法可以做到这一点。

val pairList = listOf(Pair(1, 2), Pair(5, 10), Pair(12, 15))
val firstList = // should be [1, 5, 12]

或者通常,具有任何成员变量的任何类。我目前有:

val pairList = listOf(Pair(1, 2), Pair(5, 10), Pair(12, 15))
val firstList = ArrayList<Int>()
pairList.forEach { firstList.add(it.first) }

1 个答案:

答案 0 :(得分:3)

它是:val firstList = pairList.map { it.first }

first代表该对的第一个成员,当然第二个成员有second

相同的firstList可以概括为:

val pairList = listOf(Pair(ClassA(), ClassB()), Pair(ClassA(), ClassB()), Pair(ClassA(), ClassB()))