我有一个多维数组,我想把它的每一行乘以一个包含因子的一维数组,以创建一个新的多维数组。但是,多维数组中的行数在每次运行时都会有所不同,因此我需要一种方法来循环遍历多维数组的每一行,直到到达最后一行。
这里有一个简单的例子,我有一个多维数组:{{ 1,2,3,4},{ 5,6,7,8},{ 9,10,11,12} }
我想把每一行乘以:{0.5,0.4,0,0.8}
获取:{{ 1*0.5,2*0.4,3*0,4*0.8},{ 5*0.5,6*0.4,7*0,8*0.8},{ 9*0.5,10*0.4,11*0,12*0.8} }
我尝试使用示例代码在for循环中使用.Length。
double [] factors = {0.5, 0.4, 0, 0.8};
int [,] myarray = new int [3,4] {
{ 1, 2, 3, 4},
{ 5, 6, 7, 8},
{ 9, 10, 11, 12}
};
double [] output = new double[myarray.Length];
for(int i = 0; i < myarray.Length; ++i)
    output[i] = myarray[i] * factors;我得到了一些语法错误,扩展方法'Length‘不能应用于int类型,而且带[]的索引不能应用于int类型。
https://stackoverflow.com/questions/56384433
复制相似问题