在Go中,如何分割任何类型的slice / array / string?

lf2*_*215 2 arrays partitioning generic-programming go slice

Guava具有通用分区方法,由于Go缺乏通用属性,因此无法直接在Go中实现。有没有解决方法?

lf2*_*215 5

gopart库解决了这个。它允许对Go中可索引的任何类型的任何内容进行分区。

for idxRange := range gopart.Partition(len(bigList), partitionSize) {
        bulkOperation(bigList[idxRange.Low:idxRange.High])
}
Run Code Online (Sandbox Code Playgroud)

完整的可执行示例