2015-10-24 82 views
0

我开始阅读一本关于java的书,在那里作者展示了这个程序。但是我得到了与args [0]一致的错误。作者写道这一行必须读取字符串。这是真的吗?初学者的错误(args [0])

public class Main { 

public static void main(String[] args) { 

    System.out.println(args[0]); 

    System.out.println("Amazing"); 
} 
} 

错误:

Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 0 
at Main.main(Main.java:5) 
+1

“但我得到错误”请发布完整的错误信息。我的猜测是你没有任何参数,但这是一个猜测 –

+0

请参阅Elliott答案然后:) –

+0

请不要在评论中放置堆栈跟踪或代码。编辑您的问题并将其添加到该问题。另外,请说明你如何运行你的程序。 – RealSkeptic

回答

1

当你执行程序时,您指定包含main方法,然后命令行参数的类。 args[0]是第一个命令行参数。您需要在运行该程序时提供它。

java -cp . com.something.Main A B C 

其中A是args[0],B是args[1]和C是args[2]

+0

而且,您可以使用'args.length'来查看给出了多少个参数。 – Kenney