Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/306.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 在二维数组中合并行的简单方法_C#_Arrays - Fatal编程技术网

C# 在二维数组中合并行的简单方法

C# 在二维数组中合并行的简单方法,c#,arrays,C#,Arrays,我有一个2D数组[,],我想将数组[0]行设置为等于数组[1]行 最初我认为array[0]=array[1]会将所有第0行变量设置为等于第1行变量。但它不起作用 所以我试过这个 for (int i = 0; i < itemList.Length; i++) { itemList [0,i] = itemList [1,i]; } for(int i=0;i

我有一个2D数组[,],我想将数组[0]行设置为等于数组[1]行

最初我认为array[0]=array[1]会将所有第0行变量设置为等于第1行变量。但它不起作用

所以我试过这个

for (int i = 0; i < itemList.Length; i++)
{
    itemList [0,i] = itemList [1,i];
} 
for(int i=0;i
但它会出现“超出范围”的错误


我觉得我错过了一个非常优雅的方法,任何帮助都将不胜感激。

显然,循环将超出界限

对于二维数组,
itemList.Length=行数*列数

您可以尝试以下方法:

int rowLength = itemList.GetLength(0);
int colLength = itemList.GetLength(1);
for (int j = 0; j < colLength; j++)
{
    itemList[0, j] = itemList[1, j];
}
int rowLength=itemList.GetLength(0);
int colLength=itemList.GetLength(1);
对于(int j=0;j
通过打印值进行检查:

for (int i = 0; i < rowLength; i++)
{
     for (int j = 0; j < colLength; j++)
     {
         Console.Write(string.Format("{0} ", itemList[i, j]));
     }
     Console.Write(Environment.NewLine + Environment.NewLine);
}
for(int i=0;i
希望这有帮助


[假设itemList包含
int
值]

显然,循环将超出范围

对于二维数组,
itemList.Length=行数*列数

您可以尝试以下方法:

int rowLength = itemList.GetLength(0);
int colLength = itemList.GetLength(1);
for (int j = 0; j < colLength; j++)
{
    itemList[0, j] = itemList[1, j];
}
int rowLength=itemList.GetLength(0);
int colLength=itemList.GetLength(1);
对于(int j=0;j
通过打印值进行检查:

for (int i = 0; i < rowLength; i++)
{
     for (int j = 0; j < colLength; j++)
     {
         Console.Write(string.Format("{0} ", itemList[i, j]));
     }
     Console.Write(Environment.NewLine + Environment.NewLine);
}
for(int i=0;i
希望这有帮助

[假设itemList包含
int
值]

请尝试itemList.GetLength(0)以获取第一个项目计数和 二维数组中第二个项目计数的GetLength(1)

修改您的代码,如下所示:

for (int i = 0; i < itemList.GetLength(1); i++) {
      itemList [0,i] = itemList [1,i]; 
     } 
for(int i=0;i
尝试itemList.GetLength(0)以获取第一个项目计数和 二维数组中第二个项目计数的GetLength(1)

修改您的代码,如下所示:

for (int i = 0; i < itemList.GetLength(1); i++) {
      itemList [0,i] = itemList [1,i]; 
     } 
for(int i=0;i
Try itemList[0]。for语句中的长度。可以有两种类型的二维数组[,]和[]。请确保使用的类型正确。请尝试使用itemList[0]。for语句中的长度。可以有两种类型的二维数组[,]和[]。确保您使用的是正确的类型。这很完美,谢谢,我不知道2D数组长度是这样测量的。这很完美,谢谢,我不知道2D数组长度是这样测量的。