我有一个生成数组的方法。我想返回这个数组,所以我可以使用另一种方法。到目前为止,这是我的代码:
public static Array[] generateFirstArray(int seedValue)
{
int[] firstArray = new int[20];
Random randomNumber = new Random(seedValue);
for (int i = 0; i < firstArray.Length; i++)
{
firstArray[i] = randomNumber.Next(0, 4);
}
return firstArray;
}
但是当我运行它时,我收到以下错误:
错误1无法将类型'int []'隐式转换为'System.Array []'
我尝试在firstArray之后添加[]但仍然无效。
答案 0 :(得分:13)
您的返回类型当前是Array
个对象的数组。将您的返回类型更改为int
s(int[]
)数组:
public static int[] generateFirstArray(int seedValue)
答案 1 :(得分:6)
您的方法的签名表示您正在尝试返回数组数组(Array[]
)。
您想要返回int[]
,只需将签名更改为
public static int[] generateFirstArray(int seedValue)
答案 2 :(得分:0)
您的方法的返回类型必须是int[]
而不是Array[]
这是实现它的另一种方法
int Min = 0;
int Max = 4;
Random randNum = new Random(seedValue);
int[] firstArray = Enumerable
.Repeat(0, 20)
.Select(i => randNum.Next(Min, Max))
.ToArray();
return firstArray;