我正在使用Netbeans传递命令行参数,但我得到了ArrayIndexOutOfBoundsException
。
我的代码是:
public class CmdLineArgumentPassing
{
public static void main(String args[])
{
System.out.println("Count : " + args.length);
System.out.println("i : "+args[0]);
}
}
输出结果为:
Count : 0
Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 0
答案 0 :(得分:5)
右键单击项目,选择Properties,转到Run页面,添加命令行参数。
答案 1 :(得分:2)
由于您的输出为Count : 0
,因此args
数组的length
为0
,这意味着不会传递任何参数。
当您尝试使用arg[0]
访问第一个参数时,您会遇到异常,因为您正在尝试获取不存在的数组成员。在这种情况下,您正在尝试获取空数组的第一个成员。请记住,数组索引从0
开始,然后转到length - 1
。
由于args
为空,这意味着问题在于Netbeans传递的参数不是您的代码,因此我的猜测是Netbeans配置不正确。
答案 2 :(得分:0)
我在项目属性/ run / arguments上设置了参数,但是我直接运行该类(右键单击类文件 - >运行),因此没有来自项目传递的参数。解决方案是右键单击项目,然后选择“运行”选项。传递的论据。
答案 3 :(得分:-1)
单击Final proj并运行而不是netbeans 6.9的主项目。 你会得到答案。