繁体   English   中英

异常:指定的参数超出有效值的范围。 (参数“索引”)

[英]Exception: Specified argument was out of the range of valid values. (Parameter 'index')

我收到此错误:

异常:指定的参数超出有效值的范围。 (参数“索引”)

string json = cli.DownloadString(url);
var getnumbers = JsonConvert.DeserializeObject<List<int>>(json);

int[] ToPick = { 44, 47, 57, 64, 55, 27, 11, 33 };
var picked = getnumbers.Intersect(ToPick);
Random rand = new Random();
var randomIndex = rand.Next(picked.Count());
var randompick = picked.ElementAt(randomIndex);
if (picked != null)
{
    /do something with the picked number
}

getnumbers JSON 是这样的:

[1, 2, 3, 4, 5, 6]

有谁知道它有什么问题?

仅当在相交处找不到 ToPick 数组中的数字,因此它在 getnumbers 数组中不存在时,我才会得到异常

ElementAt不返回 null。 randomIndex必须是有效的索引。 因为没有相交。 该数组为空,因此将引发错误。 添加一个条件来检查picked.Count()是否大于零。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM