如何用C#代码转换它?
//Cannot implicitly convert type 'System.Array' to 'decimal[]'.
//An explicit conversion exists
Array[] s = new Array[10];
for (int i = 0; i < 9; i++)
{
s[i] = average; //average is decimal []
}
for (int i = 0; i < 2; i++)
{
Mean = s[i]; //mean is decimal[] & s[i] system array
}
答案 0 :(得分:2)
看起来您正在尝试设置锯齿状阵列。在这种情况下,我怀疑最好的选择是将s
键入decimal[][]
:
decimal[][] s = new decimal[10][];
然后一切都正常工作。
你也可以施放:
Mean = (decimal[])s[i];
但这不太令人满意,IMO。
答案 1 :(得分:2)
我不知道您要对此代码执行什么操作,因为它不会计算平均值或平均值,
但是您使用的是无类型数组类,这主要用作公共基类,以便所有数组都表现出相同的行为,当您不知道什么时,它也可用于某些罕见的情况输入数组是
定义数组的正确方法是TypeName [ArraySize],所以如果你想要一个大小为10的十进制数组,那么正确的用法是decimal[10]
这是你的工作&#34;代码:
decimal demo_average = 0;
decimal demo_mean = 0;
decimal[] s = new decimal[10];
for (int i = 0; i < 9; i++)
{
s[i] = demo_average;
}
for (int i = 0; i < 2; i++)
{
demo_mean = s[i];
}