线程“main”中的异常java.lang.ArrayIndexOutOfBoundsException:0出错了什么?

时间:2014-03-11 07:54:29

标签: java eclipse

我正在尝试编写此程序以从命令行读取6个值作为坐标,并使用这些坐标计算所形成的三角形的面积和周长。

但是,我在运行程序时收到此错误消息:

Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 0
at geometry.ThreePoints.main(ThreePoints.java:26)

出了什么问题?

我的代码,错误消息:

enter image description here

5 个答案:

答案 0 :(得分:1)

该程序不从命令行读取,它读取起始参数。我想这不存在。

编辑: 从命令行读取的示例,您将找到at the oracle docs

答案 1 :(得分:1)

您正在eclipse中没有任何参数运行您的程序。

转到run > run configuration并添加参数: enter image description here

答案 2 :(得分:0)

在阅读之前使用args.length确定参数的数量。

if (args.length < 6) {
  System.out.println("Number of argument too small. Must be 6, but was "+ args.length +".");
}

你可能在输入参数时犯了一个错误。在访问数组元素之前,您应该始终检查数组元素的数量!

答案 3 :(得分:0)

在尝试运行程序时,您似乎没有传递参数。

转到eclipse中运行配置并在那里添加参数。这将解决您的问题。

答案 4 :(得分:0)

eclipse转到RunAs-->Run Configurations.. --> Arguments --> Program Arguments

放在那里arguments whitespace separated

使用args.length检查length的{​​{1}}。