我正在用一本书学习java。有这样一个练习,我不能正确地工作。它使用java类Double添加两个double。当我试图在Eclipse中运行这段代码时,它给了我标题中的错误。
public static void main(String[] args) {
Double d1 = Double.valueOf(args[0]);
Double d2 = Double.valueOf(args[1]);
double result = d1.doubleValue() + d2.doubleValue();
System.out.println(args[0] + "+" + args[1] + "=" + result);
}
2条答案
按热度按时间fdx2calv1#
问题
这个
ArrayIndexOutOfBoundsException: 0
意味着索引0
不是数组args[]
的有效索引,这反过来又意味着数组为空。在
main()
方法的这个特殊例子中,它意味着没有参数被传递到命令行上的程序。可能的解决方案
args[0]
和args[1]
)Run > Run configurations...
,然后选择Arguments
选项卡作为你的运行配置,并在 * program arguments * 区域中添加一些参数。注意你应该处理参数不足的情况,在main方法的开头这样写:
这将优雅地失败,而不是使您的程序崩溃。
mqkwyuun2#
这段代码期望在运行时得到两个参数(
args
数组),访问args[0]
会导致java.lang.ArrayIndexOutOfBoundsException
,这意味着你没有传递任何参数。