我想创建一个评分系统并获得最佳分数,但是我的方法生成了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 –