【发布时间】:2013-10-23 20:26:42
【问题描述】:
我在做作业时遇到了标题中提到的错误,但根本找不到删除它的方法。这是我遇到此问题的方法:
public static double LaskeMiidi(double[] luvut)
{
double ka = Keskiarvo(luvut);
double miidi = luvut[0];
for (int i = 0; i < luvut.Length; i++)
{
if (luvut[i] - ka < luvut[i + 1] - ka) // The line error points to!
{
miidi = luvut[i];
}
else
{
miidi = luvut[i + 1];
}
}
return miidi;
}
所以基本上问题是当我说luvut[i + 1] 时,在某些时候这个索引可能会变得超过数组的长度。我只是想不出任何方法来解决这个问题,因为我只是编程的初学者。
【问题讨论】:
-
-snip- 根据答案更改
for循环。 -
提示:通过某种方式改变“i
-
你试过
i < luvut.Length-1 -
@JeroenVannevel - 我会切换这两个子句,否则您仍然可能会收到错误(由于短路评估)。
-
@Tim:当然,好电话。
标签: c# arrays visual-studio for-loop