以下是 D 语言的原生实现和库函数实现:

原生实现:

import std.range;
import std.algorithm.iteration;
import std.array;

T[][] arrayChunk(T)(T[] arr, size_t size)
{
    T[][] result;
    foreach (i, chunk; arr.chunks(size))
    {
        result ~= chunk.array;
    }
    return result;
}

void main()
{
    int[] arr = [1, 2, 3, 4, 5, 6, 7, 8, 9];
    int[][] chunks = arrayChunk(arr, 3);
    writeln(chunks);
}

库函数实现:

import std.range;
import std.algorithm.iteration;
import std.array;

void main()
{
    int[] arr = [1, 2, 3, 4, 5, 6, 7, 8, 9];
    int[][] chunks = arr.chunks(3).map!(a => a.array).array;
    writeln(chunks);
}

完整代码可直接运行。

D 语言实现 PHP array_chunk 函数:原生方法和库函数

原文地址: https://www.cveoy.top/t/topic/oeeQ 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录