【发布时间】:2018-01-27 09:50:55
【问题描述】:
我想编写这个小程序,它应该在输入一个变量的同时进行简单的计算。代码如下:
public class DFact {
public static void main(String[] args) {
int n;
int df;
int i;
n = Integer.parseInt(args[0]);
df = 1;
i = n;
while(i > 0) {
df = df * i;
i = i - 2;
}
System.out.println(df);
}
}
对于这个程序,我收到以下消息:
线程“main”中的异常 java.lang.ArrayIndexOutOfBoundsException: 0
在 DFact.main(DFact.java:9)
【问题讨论】:
-
你是如何传递参数的?这表明您没有向程序传递任何参数。你能说明你用什么来启动它以及它是如何设置的吗?
-
问题标题询问
Double.parseDouble,但代码有Integer.parseInt。请尽量保持一致。无论如何,正如@Brian 已经说过的,可能你没有传递任何参数,那么args是空的,所以你不能访问args[0],因为它不存在。也许this link 可以提供帮助。
标签: java indexoutofboundsexception