使用单一的一维数组为二维数组赋值

4
我有以下代码:
double[,] var = new double[5,10];
double[] var2 = new double[10];

int a;

for (a=0;a<10;a++)
    var[0,a] = var2[a];

在C#中是否有一种方法可以直接赋值整行数据而不需要使用for循环?下面的语法是不正确的,但我想知道是否存在一种方法可以实现。

var[0] = var2;

不,你应该分别分配所有项目。 - Selman Genç
你可能想要查看锯齿数组 - StoriKnow
1个回答

0

对于二维数组没有,但是有针对锯齿数组的方法。

double[][] var = new double[5][];
for (int i = 0; i < 5; i++)
    var[i] = new double[10];

double[] var2 = new double[10];

var[0] = var2;

请注意,在这些语句之后,var[0] 引用了 var2。如果您想要一个副本,您需要创建一个正确大小的空数组,并将另一个数组的内容复制到其中:
var[0] = new double[10];
var2.CopyTo(var[0], 0);

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接