C#错误CS1503:参数1:无法从int []转换为int

时间:2017-12-19 22:12:07

标签: c#

当我尝试从数组中显示项目时,它会显示:错误CS1503:参数1:无法从int []转换为int

    List<int[]> rolls = new List<int[]>();
    rolls.Add(new int[] { throw1, throw2, throw3 }); 


    Console.WriteLine(rolls[rolls[1]]);

2 个答案:

答案 0 :(得分:2)

您正尝试使用对数组的引用来索引列表。 当你写rolls[rolls[1]]时,rolls[1]数组,而不是int。当你索引到列表时(即当你执行roll [x]),其中x是某个int时,int是预期的。另外,正如其他人所指出的那样,由于roll只包含一个元素,rolls[1]将是一个超出范围的索引。 什么会工作是这样的:

Console.WriteLine(rolls[0][0]) ; 

答案 1 :(得分:1)

根据编译错误,我假设你试图从数组中取一个元素(在List中)。

如,

List<int[]> rolls = new List<int[]>();
rolls.Add(new int[] { 1, 2, 3 });

从上面的数组中获取一个元素(根据你的代码),使用

rolls[0][0]

首先&#39; [0]&#39;将获取第0个&#39; List中的索引(在本例中为int [])和下一个索引&#39; [0]&#39;将取得第0个&#39;来自int []的元素。