我在运行这个java代码时发现了这个错误
它显示的错误如下所示: 线程“main”java.lang.ArrayIndexOutOfBoundsException中出现异常:0 在Factorial.main(Factorial.java:5)我在运行这个java代码时发现了这个错误,java,Java,它显示的错误如下所示: 线程“main”java.lang.ArrayIndexOutOfBoundsException中出现异常:0 在Factorial.main(Factorial.java:5) 您应该使用命令行参数运行此代码: class Factorial { public static void main(String args[]) { int num=Integer.parseInt(args[0]); int result=1
您应该使用命令行参数运行此代码:
class Factorial
{
public static void main(String args[])
{
int num=Integer.parseInt(args[0]);
int result=1;
while(num>0)
{
result=result*num;
num--;
}
System.out.println("Factorial of Given Number is :" +result);
}
}
此外,为了使您的编程更加方便用户,我建议您在尝试访问
args[0]
之前检查args.length>0
,使用以下代码
java Factorial 5
使用参数运行程序
class Factorial {
public static void main(String args[]) {
if(args[0].length > 0) {
int num=Integer.parseInt(args[0]);
int result=1;
while(num>0)
{
result=result*num;
num--;
}
System.out.println("Factorial of Given Number is :" +result);
} else {
System.out.println("Your message requesting a number");
}
}
}
如果不分析任何参数,将打印“您的请求号码的消息”。确保在执行程序时传递参数的内容,如:
Ex: java Factorial 5
如果不给程序一个命令行参数,就会发生这种情况。你是如何运行这个程序的?您正在向它传递任何参数吗?如果是,如何编辑?请将标题编辑为对该问题有用且具有描述性的内容。
java fact 10