gpt4 book ai didi

c# - 以 LINQ 方式初始化交错数组

转载 作者:太空狗 更新时间:2023-10-29 17:31:53 26 4
gpt4 key购买 nike

我有一个二维锯齿状数组(虽然它总是矩形的),我使用传统循环对其进行初始化:

var myArr = new double[rowCount][];
for (int i = 0; i < rowCount; i++) {
myArr[i] = new double[colCount];
}

我想也许某些 LINQ 函数会给我一种在一条语句中执行此操作的优雅方式。然而,我能想到的最接近的是:

double[][] myArr = Enumerable.Repeat(new double[colCount], rowCount).ToArray();

问题是,它似乎正在创建单个 double[colCount] 并将引用分配给为每一行分配一个新数组的 intsead。有没有办法做到这一点又不会太神秘?

最佳答案

double[][] myArr = Enumerable
.Range(0, rowCount)
.Select(i => new double[colCount])
.ToArray();

关于c# - 以 LINQ 方式初始化交错数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1099731/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com