public class Array {
public static void main ( String[] args ) {
int DAYS_SIZE = 5;
double[] sales = new double[DAYS_SIZE];
String input;
char userResponse;
Scanner keyboard = new Scanner(System.in);
double total = 0;
double average = 0;
int index = 0;
do {
index++;
System.out.print("Enter sales for day " + index + ": ");
sales[index] = keyboard.nextInt();
System.out.print("Another ( y or n )? " );
input = keyboard.next();
userResponse = input.charAt(0);
} while ( userResponse == 'Y' || userResponse == 'y');
}
}
我在最后一天得到java.lang.ArrayIndexOutOfBoundsException
:5
我知道为什么会这样,但我不知道如何解决它
答案 0 :(得分:1)
在访问数组之前增加索引,而不检查索引是否已大于数组的大小。当用户输入日期和天数时,索引将大于5。
同样,当索引从0开始而不是1时,没有索引5,但只有0-4