1
我在Greenfoot中的一所學校項目的編程和我不斷收到此錯誤:的Java:索引越界
java.lang.IndexOutOfBoundsException: Index: 1, Size: 1
at java.util.ArrayList.rangeCheck(ArrayList.java:635)
at java.util.ArrayList.get(ArrayList.java:411)
at Speler.act(Speler.java:60)
at greenfoot.core.Simulation.actActor(Simulation.java:583)
at greenfoot.core.Simulation.runOneLoop(Simulation.java:541)
at greenfoot.core.Simulation.runContent(Simulation.java:215)
at greenfoot.core.Simulation.run(Simulation.java:205)
這段代碼:
if (Greenfoot.isKeyDown("s"))
{
int wapenID;
if(schietTimer < 1)
{
if(richting != null)
{
if(gebruiktWapen != -1)
{
{
getWorld().addObject(new Kogel(richting), getX(), getY());
schietTimer = 30;
wapenLijst.get(gebruiktWapen).schietKogel();
System.out.println(wapenLijst.size());
if(wapenLijst.get(gebruiktWapen).hoeveelKogels() == 0)
{
gebruiktWapen++;
}
}
}
else
{
if(wapenLijst.size() > 0)
{
gebruiktWapen ++;
}
}
}
}
}
我好像不能夠找到迄今爲止的錯誤,因爲我做了一些檢查來檢查索引。任何人都可以幫我解決這個問題嗎?
如果你的錯誤發生在你提供的代碼中,你就知道它必須在這一行:'wapenLijst.get(gebruiktWapen).schietKogel();'用調試器遍歷代碼來查看wapenLijst的大小與您用來索引ArrayList的gebruiktWapen的值進行比較。 – mstbaum 2015-02-11 15:44:22