我正在尝试编写此程序以从命令行读取6个值作为坐标,并使用这些坐标计算所形成的三角形的面积和周长。
但是,我在运行程序时收到此错误消息:
Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 0
at geometry.ThreePoints.main(ThreePoints.java:26)
出了什么问题?
我的代码,错误消息:
答案 0 :(得分:1)
该程序不从命令行读取,它读取起始参数。我想这不存在。
编辑: 从命令行读取的示例,您将找到at the oracle docs
答案 1 :(得分:1)
您正在eclipse
中没有任何参数运行您的程序。
转到run > run configuration
并添加参数:
答案 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}}。