我想創建一個評分系統並獲得最佳分數,但是我的方法生成了IndexOutOfBoundsException,但我無法找到Array列表界限有什麼可以幫助我嗎?在獲取最高整數的Java - IndexOutOfBoundsException
代碼:
public static Player getBestScore(Arena arena) {
System.out.println(arena.getAPlayers().size());
System.out.println(arena.getAPlayers().get(1).toString());
int i = 0;
Player player = null;
for(int p = 0; p != arena.getAPlayers().size() - 1; i++) {
System.out.println(arena.getAPlayers().get(i).toString());
org.bukkit.entity.Player pla = arena.players.get(i);
if(getArenaPlayer(pla).getScore() > i) {
i = getArenaPlayer(pla).getScore();
player = getArenaPlayer(pla);
}
}
return player;
}
的方法是靜態的,因爲其他方法和變量都是靜態的太
列出從0開始的索引像其他陣列狀結構。如果只有一個玩家,這行'System.out.println(arena.getAPlayers()。get(1).toString());'可能會有問題。 –
你的for循環條件應該像(int i = 0;我
@BrettWalker它不能,因爲得分systen arraylist的最小值是2 –