在Kotlin中取最后n个元素

Lor*_*one 6 functional-programming kotlin

我有一个列表,我要对其进行一些转换,但不包括前两个元素。我怎样才能做到最好?像这样:

list.reversed().take(list.size - 2)...(my transformations)
Run Code Online (Sandbox Code Playgroud)

要么

list.excludeFirstN(2)...(my transformations)
Run Code Online (Sandbox Code Playgroud)

Lor*_*one 5

哦,我找到了drop()函数。

  • 仅供参考:如果您确实想“在Kotlin中获取最后一个n元素”,则还有[`takeLast`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/take-last.html) 。 (3认同)

Has*_*sef 5

您可以像这样使用takeLast(n)

list.takeLast(3)
Run Code Online (Sandbox Code Playgroud)

但是要小心,最后一个数字会首先显示,因此您可能还需要使用反向,因此您的代码可能是:

list.takeLast(3).reversed()
Run Code Online (Sandbox Code Playgroud)