spa*_*bed 0 c# arrays foreach loops
好的,所以这看起来很简单,但我想不出一个直截了当的解决方案; 基本上我在C#中有一个包含102个元素的对象数组.然后我还有另外4个空数组.我想迭代原始数组并均匀分布100个元素,然后分别将101和102分配给第1个和第2个新数组.
int i = 1,a=0, b=0, c=0, d = 0;
foreach (ReviewStatus data in routingData)
{
if (i == 1)
{
threadOneWork[a] = data;
a++;
}
if (i == 2)
{
threadTwoWork[b] = data;
b++;
}
if (i == 3)
{
threadThreeWork[c] = data;
c++;
}
if (i == 4)
{
threadFourWork[d] = data;
d++;
i = 0;
}
i++;
}
Run Code Online (Sandbox Code Playgroud)
现在上面的代码肯定有效,但我很好奇,有没有人知道更好的方法呢?
var workArrays = new[] {
threadOneWork,
threadTwoWork,
threadThreeWork,
threadFourWork,
};
for(int i=0; i<routingData.Length; i++) {
workArrays[i%4][i/4] = routingData[i];
}
Run Code Online (Sandbox Code Playgroud)