gpt4 book ai didi

java - 线程中的异常 "main"java.lang.ArrayIndexOutOfBoundsException :5 What?

转载 作者:行者123 更新时间:2023-12-02 04:19:37 24 4
gpt4 key购买 nike

所以基本上我想制定一个算法来洗牌我的数组,我所拥有的就是这个:

import java.util.*;

class MixUp{

public static void main(String args[]){

int temp, i=0;
boolean flag=true;
int Table[] = new int[5];
Scanner input = new Scanner(System.in);

for(i=0; i<5; i++){
System.out.println("Number? : ");
Table[i] = input.nextInt();
}

for(i=0; i<5; i++){
System.out.printf(Table[i] + "\t");
}

for(i=0; i<5; i++){
temp = Table[i+1];
Table[i+1] = Table[Table.length-i];
Table[Table.length-i] = temp;
if(i+1 == Table.length-i) break;
}

for(i=0; i<5; i++){
System.out.printf(Table[i] + "\t");
}
}
}

而且它不断弹出

Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 5 at MixUp.main(MixUp.java:17)

最佳答案

倒数第二个循环迭代 while i<5 ,这很好,但随后尝试访问 Table[i+1] 。如果i=4这将导致尝试访问 Table[5] ,当然,这不是一个有效的索引。

解决这个问题的一种方法可能是将循环的条件更改为 i<4而不是i<5 .

关于java - 线程中的异常 "main"java.lang.ArrayIndexOutOfBoundsException :5 What?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32928689/

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