使用单个昏暗数组将值分配给两个昏暗数组
Posted
技术标签:
【中文标题】使用单个昏暗数组将值分配给两个昏暗数组【英文标题】: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
【参考方案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);
【讨论】:
以上是关于使用单个昏暗数组将值分配给两个昏暗数组的主要内容,如果未能解决你的问题,请参考以下文章
Python scikit-learn SVM 分类器“ValueError:找到昏暗 3 的数组。预期 <= 2”