gpt4 book ai didi

java - 我不断收到 ArrayIndexOutOfBoundsException,但我不知道为什么

转载 作者:行者123 更新时间:2023-12-01 07:35:20 26 4
gpt4 key购买 nike

我不断在显示的行中收到ArrayIndexOutOfBoundsExceptionwinVals[i] = rand,但我不知道为什么。

int valueCount = 5;
int theLimit = 5;
int[] winVals = new int[valueCount];
Random r = new Random();
int rand = 0;
for(int i= 0; i < winVals.length; i++)
{
rand = r.nextInt(theLimit - 1) +1;
if(i == 0)
{
winVals[0] = rand;
}
else if (i > 0)
{
for (int j = 0; j < winVals.length; j++)
{
if( winVals[j] == rand)
{
i--;
}
else
{
winVals[i] = rand;
}
}
}
}
for(int i=0; i < valueCount; i++)
{
System.out.println(winVals[i]);
}

最佳答案

for (int j = 0; j < winVals.length; j++)
{
if( winVals[j] == rand)
i--;
else
{
winVals[i] = rand;
}
}

在本节中,您将循环遍历 j 的值并减少 i,但您不会费心检查 i 是否为仍然有效。如果 i 为 1 并且将其减少两次会怎样?

关于java - 我不断收到 ArrayIndexOutOfBoundsException,但我不知道为什么,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12828242/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com