如何分割阵列成一组的每个n个元素?阵列、元素

2023-09-08 08:56:47 作者:老衲让你受精了

什么是组的最佳方式的阵列分成n每个在c#4元件阵列的列表。

What is the best way to group an array into a list of array of n elements each in c# 4.

例如

string[] testArray = { "s1", "s2", "s3", "s4", "s5", "s6", "s7", "s8" };

应分成,如果我们取n = 3。

should be split into if we take n=3.

string[] A1 = {"s1", "s2", "s3"};
string[] A2 = {"s4", "s5", "s6"};
string[] A3 = {"s7", "s8"};

可能使用LINQ一个简单的方法?

May be a simple way using LINQ?

推荐答案

这将产生具有3个元素的字符串数组的数组:

This will generate an array of string arrays having 3 elements:

int i = 0;
var query = from s in testArray
            let num = i++
            group s by num / 3 into g
            select g.ToArray();
var results = query.ToArray();