在 Kotlin 中取最后 n 个元素
Take last n element in Kotlin
我有一个列表,我想对其应用一些转换,但不包括前 2 个元素。我怎样才能做到最好?像这样:
list.reversed().take(list.size - 2)...(my transformations)
或
list.excludeFirstN(2)...(my transformations)
哦,我找到了drop()函数。
您可以像这样使用takeLast(n):
list.takeLast(3)
但要注意,最后一个数字先表示,所以你可能还需要使用 reversed,所以你的代码可能是:
list.takeLast(3).reversed()
如前所述,drop
非常适合用例:
listOf(1,2,3,4).drop(2).forEach(::println)
否则,您也可以按索引筛选:
listOf(1,2,3,4).filterIndexed { index, _ -> index > 1 }.forEach(::println)
我有一个列表,我想对其应用一些转换,但不包括前 2 个元素。我怎样才能做到最好?像这样:
list.reversed().take(list.size - 2)...(my transformations)
或
list.excludeFirstN(2)...(my transformations)
哦,我找到了drop()函数。
您可以像这样使用takeLast(n):
list.takeLast(3)
但要注意,最后一个数字先表示,所以你可能还需要使用 reversed,所以你的代码可能是:
list.takeLast(3).reversed()
如前所述,drop
非常适合用例:
listOf(1,2,3,4).drop(2).forEach(::println)
否则,您也可以按索引筛选:
listOf(1,2,3,4).filterIndexed { index, _ -> index > 1 }.forEach(::println)