public static void main(String[] args)
String[] agrs这个参数表明main方法将接收一个字符串数组,也就是命令行参数,和String… args等同。
public static void main(String… args)
在Java应用程序中的main方法中,程序名并没有存储在args数组中,例如
public class Message
{
public static void main(String [] args)
{
if(args[0].equals("-h"))
System.out.print("Hello,");
else if(args[0].equals("-g"))
System.out.print("Goodbye,");
for(int i=1;i<args.length;i++)
System.out.print(" "+args[i]);
System.out.println(args[2]);//;//如果加入此句,当没有输入第三个参数时,程序输出此句之前的信息,然后接着抛出异常信息
}
}
1)运行命令java Message -h plover lv
运行结果如下(传递了三个参数,运行结果正常)
Hello, plover lvlv
2)运行命令java Message -h plover
运行结果如下(抛出异常,如果使用String h2=args[2];则直接抛出异常 )
Hello, ploverException in thread “main” java.lang.ArrayIndexOutOfBoundsException: 2
at Message.main(Message.java:11)//获取args[2]的语句报错