Jam*_* M. 9 c# linq arrays initialization jagged-arrays
我有一个二维锯齿状数组(虽然它总是矩形),我使用传统的循环初始化:
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分配引用.有没有办法做到这一点,而不是太神秘?
Amy*_*y B 24
double[][] myArr = Enumerable
.Range(0, rowCount)
.Select(i => new double[colCount])
.ToArray();
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3298 次 |
| 最近记录: |