java在数组索引超出范围时卡住异常
我对编程非常陌生,我一直被困在同一点上。每次尝试使用数组时,我都会得到“线程中的异常”main“java.lang.ArrayIndexOutOfBoundsException:”我不知道如何修复它。以下是我的开始:java在数组索引超出范围时卡住异常,java,arrays,Java,Arrays,我对编程非常陌生,我一直被困在同一点上。每次尝试使用数组时,我都会得到“线程中的异常”main“java.lang.ArrayIndexOutOfBoundsException:”我不知道如何修复它。以下是我的开始: public static void main(String[] args) { Scanner input = new Scanner(System.in); int i; String format; String[] value; int[] number; value
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
int i;
String format;
String[] value;
int[] number;
value = new String[10];
number = new int[10];
i = 0;
System.out.println("Please enter a phone number: ");
value[i] = input.nextLine();
for (i = 0; i < value.length; i++); {
number[i] = Integer.parseInt(value[i]);
System.out.print(number[i]);
publicstaticvoidmain(字符串[]args){
扫描仪输入=新扫描仪(System.in);
int i;
字符串格式;
字符串[]值;
int[]号;
值=新字符串[10];
数字=新整数[10];
i=0;
System.out.println(“请输入电话号码:”);
值[i]=input.nextLine();
对于(i=0;i
注意最后一个;
在
for (i = 0; i < value.length; i++); { // blah
for(i=0;i
这个循环相当于
for (i = 0; i < value.length; i++) {
;
}
{
// blah
}
for(i=0;i
它基本上只是执行空语句10次。在此循环之后,i
的值为10,这是number
和/或value
的越界索引
去掉
;
注意最后一个;
for (i = 0; i < value.length; i++); { // blah
for(i=0;i
这个循环相当于
for (i = 0; i < value.length; i++) {
;
}
{
// blah
}
for(i=0;i
它基本上只是执行空语句10次。在此循环之后,i
的值为10,这是number
和/或value
的越界索引
摆脱;
这是因为
i
范围没有受到应有的限制。如果您在它所属的循环中声明int i=0
,您会更快地发现错误。for(int i=0;i…
末尾有一个分号。它基本上只是增加i
,因为它没有被声明为循环变量,所以保留循环后的最后一个值,即10。然后尝试访问不存在的编号[10]
。删除分号;
i
范围没有受到应有的限制。如果您在它所属的循环中声明int i=0
,您会更快地发现错误。for(int i=0;i…
末尾有一个分号。它基本上只是增加i
,因为它没有被声明为循环变量,所以保留循环后的最后一个值,即10。然后尝试访问不存在的编号[10]
。删除分号;
for(i=0;i
请删除for循环括号后的“;”。for(i=0;i System.out.print(number[i]);
注意最后一个;
在处(i=0;i
在这个循环之后i
的值为10,这是数字和/或值的越界索引。注意最后一个;
在处(i=0;i
在此循环之后,i
的值为10,这是number
和/或value
的越界索引。