Java 初学者';s错误(参数[0])

Java 初学者';s错误(参数[0]),java,args,Java,Args,我开始读一本关于java的书,作者在书中展示了这个程序。但是我在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.Arr

我开始读一本关于java的书,作者在书中展示了这个程序。但是我在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)

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

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

其中A是
args[0]
,B是
args[1]
,C是
args[2]
,“但我有错误”,请发布完整的错误消息。我的猜测是你没有任何参数,但这是一个猜测(见Elliott的答案:)请不要在注释中添加堆栈跟踪或代码。编辑您的问题并将其添加到该问题中。另外,显示您是如何运行程序的。并且,您可以使用
args.length
查看给出了多少参数。