gpt4 book ai didi

Kotlin:将大列表转换为设置分区大小的子列表

转载 作者:IT老高 更新时间:2023-10-28 13:29:42 24 4
gpt4 key购买 nike

我正在寻找与 Groovy's collate 等效的函数这会将一个大列表分成批处理进行处理。我确实看到了subList它可以改编成类似的功能,但想检查并确保我没有错过一个内置的或疯狂的简单替代方法来滚动我自己的。

最佳答案

使用 Kotlin 1.3,根据您的需要,您可以选择以下方法之一来解决您的问题。


#1。使用 chunked

fun main() {
val list = listOf(2, 4, 3, 10, 8, 7, 9)
val newList = list.chunked(2)
//val newList = list.chunked(size = 2) // also works
print(newList)
}

/*
prints:
[[2, 4], [3, 10], [8, 7], [9]]
*/

#2。使用 windowed

fun main() {
val list = listOf(2, 4, 3, 10, 8, 7, 9)
val newList = list.windowed(2, 2, true)
//val newList = list.windowed(size = 2, step = 2, partialWindows = true) // also works
println(newList)
}

/*
prints:
[[2, 4], [3, 10], [8, 7], [9]]
*/

关于Kotlin:将大列表转换为设置分区大小的子列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34498368/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com