【发布时间】:2012-07-02 23:45:12
【问题描述】:
可能重复:
How can I convert a list<> to a multi-dimensional array?
为此,我想要一个double[,] 形式的数组,因为我不知道这个数组的长度是多少,我想先创建一个List,然后再使用List<T>.ToArray() 将其转换为double[,]:
public double[,] FilterClampedData(double[,] data)
{
var finalData = new List<double[]>();
//Do some stuff on parameter
return finalData.ToArray(); ///Does not compile :(
}
【问题讨论】:
-
A
List<double[]>只有在数组长度相同的情况下才可能转换为double[,]。它可以轻松转换为double[][](这就是ToArray返回的内容)。如果您不清楚,请比较 msdn.microsoft.com/en-us/library/2yd9wwz4 和 msdn.microsoft.com/en-us/library/2s05feca -
您的方法签名将二维数组指示为返回,而您返回的是一维数组。实际上,您正在返回一个数组数组。
-
如果你的返回值为
double[][] -
“不。事实上,这些不一定是兼容的数组”stackoverflow.com/a/678211/284240
-
这不是我第一次在 SO 上看到这个问题。
标签: c# .net list multidimensional-array