【问题标题】:Using a single dim array to assign values to a two dim array使用单个昏暗数组将值分配给两个昏暗数组
【发布时间】:2014-05-14 07:43:45
【问题描述】:

我有以下代码

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;

【问题讨论】:

  • 不,您应该单独分配所有项目。
  • 你可能想看看jagged arrays

标签: c# arrays


【解决方案1】:

不是二维数组而是锯齿数组

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);

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2023-03-30
    • 1970-01-01
    • 1970-01-01
    • 2016-11-30
    • 2016-01-14
    • 2017-01-16
    • 1970-01-01
    相关资源
    最近更新 更多