1
我是新来的java,我想知道如何修复我的程序,该程序必须从用户输入中获取数字,然后将它们存储在数组中,然后向前并向后打印这些数字。我已经设法让程序向前打印;然而,当我尝试打印向后我得到线程在数组中向后打印数字
异常 “主要” java.lang.ArrayIndexOutOfBoundsException:4 在arrays4Days.arrayS1.main(arrayS1.java:55)
import java.util.*;
public class arrayS1 {
public static void main(String[] args) {
Scanner console = new Scanner(System.in);
System.out.print("How many numbers will you enter? ");
int count = console.nextInt();
int myArray[]= new int [count];
for (int i =0; i < myArray.length ; i++) {
System.out.print("Type a number: ");
int number=console.nextInt();
myArray[i]=number;
}
System.out.println();
System.out.println("Your numbers in forward order:");
for (int i = 0 ; i < myArray.length ; i++) {
System.out.println(myArray[i]);
}
System.out.println();
System.out.println("Your numbers in backward order:");
for (int i = myArray.length ; i> 0 ; i--) {
System.out.println(myArray[i]);
}
}
}
'INT I = myArray.length':你能解释一下为什么你认为一个数组的长度也产生有效的索引?如果是这种情况,那么为什么你在第一个循环中写了'i
Tom
我认为myarray.length表示存储在数组中的值的数量。我用它来设置for循环可以循环的最大次数(用于我的第一个循环)。 –