【发布时间】:2016-07-25 09:15:01
【问题描述】:
我有像这样的锯齿状二维数组:
static void Main(string[] args)
{
int[][,] newArray = new int[2][,];
int[][,] waypoints = new int[4][,]
{
new int[,] {{6,3,4,5,6}},
new int[,] {{1,3,4,5,6}},
new int[,] {{1,4,3,2,1}},
new int[,] {{6,3,4,5,6}}
};
int l = 0;
int m = 0;
for (int i = 0; i < waypoints.Length; i++)
{
for (int j = 0; j < waypoints[i].GetLength(0); j++)
{
for (int k = 0; k < waypoints[i].GetLength(1); k++)
{
if (k == 1 || k == 3)
{
// waypoints[i][j,k].CopyTo(newArray[i][j,k]);
}
l++;
m++;
}
}
}
Console.ReadKey();
}
我只需要从每个锯齿状数组中提取 [0,1] 和 [0,3] 二维数组,并将其存储在新的锯齿状数组 - newArray 中。拜托,你能帮我吗,怎么做。非常感谢。
所需的输出应如下所示:
int[][,] newArray = new int[2][,];
{
new int[,] {{3,5}},
new int[,] {{3,5}},
new int[,] {{4,2}},
new int[,] {{3,5}}
};
【问题讨论】:
-
试试这样的
Foreach (int i in newArray [0,1]{//do stuff} -
不清楚您想如何将数据存储在
newArray中。你能描述一下结果数组应该是什么吗? -
我已经在我的任务中添加了所需的输出。
-
您的数组有些不寻常,但在我看来,您好像在处理 3D 数组(2D 数组的数组),即使您不需要它们,因为您的 2D 数组元素都只有一个元素每个(一行),即它们是逻辑 POV 的一维;如双花括号所示。
-
我知道彼得你的意思,但我需要保留这个解决方案用于其他目的。
标签: c# arrays jagged-arrays