用C#中的另一个数组替换一列数组

时间:2014-03-08 02:10:08

标签: c#

我有一个大小为b的数组(100行,1143600列)。首先,我从这个数组中读取一列(例如第1234行)并对其进行一些计算并将结果保存在另一个数组中。 现在,我想替换这个数组(新数组,它的大小是(100行,1列(即:一列))与原始数组(数组b中的第1234列)。

float[][] b = Enumerable.Range(0, 1143600).Select(j => new float[100]).ToArray(); // Array b

float [] item_factor= b[zz];  //its new column after ding some calculation

如何将item_factor []替换为数组b中的目标列?

1 个答案:

答案 0 :(得分:0)

只需使用for循环:

for (int i = 0; i < 1143600; i++)
   b[1234][i] = new_column[i];

或者,如果我误解了,你试图走另一条道路:

for (int i = 0; i < 1143600; i++)
   new_column[i] = b[1234][i];

注意,如果交换了问题中的常量,则1143600只会变为100(显然尝试访问第1234行将无效,因此您必须选择较低的索引)。

两者几乎完全相同。我声明了一个迭代变量“i”,并指示程序在(隐含)括号内为0到1143600的每个“i”值执行语句,每次递增1。通过为目标行分配源行列的值(使用i索引),我有效地“复制”了列。

以下是for循环的MSDN参考:MSDN

如果我能进一步澄清,请告诉我。