我有一个二维锯齿状数组(虽然它总是矩形),我使用传统的循环初始化:
var myArr = new double[rowCount][];
for (int i = 0; i < rowCount; i++) {
myArr[i] = new double[colCount];
}
Run Code Online (Sandbox Code Playgroud)
我想也许一些LINQ函数会在一个语句中给我一个优雅的方法来做到这一点.但是,我能想出的最接近的是:
double[][] myArr = Enumerable.Repeat(new double[colCount], rowCount).ToArray();
Run Code Online (Sandbox Code Playgroud)
问题是它似乎正在创建一个单独的double[colCount]并为每行分配一个新数组的intsead分配引用.有没有办法做到这一点,而不是太神秘?