修复数组索引超出界限异常

时间:2013-12-05 03:16:11

标签: java arrays exception indexoutofboundsexception

我创建了这个循环,它只在第一次工作,然后我收到一个数组索引超出界限异常。

for(int a=0; a<pkcode.length;a++){
  for(int b=0;b<trainercode.length;a++){
    if(pkcode[a]==trainercode[b]){
      w=a+1;
      v=b+1;
      System.out.println("Your egg(s) that match with trainers are:");
      System.out.println("egg #" +w+ ": " + pkcode[a] + " matches with trainer #" +v+ ": " + trainercode[b]);
        }
  }

}

任何人都知道如何解决这个问题?

1 个答案:

答案 0 :(得分:2)

for(int b=0;b<trainercode.length;a++){

应该是

for(int b=0;b<trainercode.length;b++){

你正在增加错误的值(内循环使用b但增加a)。

这将使你在内循环中有一个无限循环(b永远不会递增,因此它永远不会达到结束条件)并且它将以两倍的速度到达你的a并越界在pkcode[a]