一般格式:public static void main(String[] args){}
String[]: 是String数组 ,(注意 String中的S是大写)例如 int[] 数组等等。
args=arguments 是主方法的形参。该单词可以翻译为“入口参数”,这个参数名当然可以任意修改的。比如:
public static void main(String a[]) {
System.out.println(“1”);
}
String args[]的作用
String[] args 这个字符串数组是保存运行main函数时输入的参数的,例如main函数所在的类名为test 那么你在cmd运行 java test a b c 时,args[0] = a ,args[1]=b, args[2]=c 你就可以在你的程序中调用你输入的这些变量了。
你在运行的时候加个参数,比如 java test XX。然后在你的main函数里面加这段话:System.out.println(“arg is”+args[0]),然后看看输出是什么?
是不是这个:
arg is XX
你还可以试试这样,在运行时输入java test aa bb cc,并且在你的main函数里面加这段话:
System.out.println(“arg is”+args[0]+" “+args[1]+” "+args[2]),然后看看输出是什么?
是不是:
arg is aa bb cc,
这和在main函数里调用其他函数并且向被调用函数传递参数是一样的道理,只不过传给main函数罢了。
为什么程序中去掉String args[]会出现错误?
答案:
出错在于,不带String args[]的main方法和带String args[]的main方法,本质上已经不是同一个方法了,java 本身不存在不带String args[]的main方法,所以当然出错。
String[] args是main函数的形式参数,或者说入口参数,可以用来获取命令行用户输入进去的参数。
但是你在写程序的时候不管用的到用不到,声明main函数的时候一定要在括号里写上它,否则会报错。
如果不加String args[]或添加的别的类型的参数,会在运行期报这个错误:
错误: 在类 aStart_mav.test1 中找不到 main 方法, 请将 main 方法定义为:
public static void main(String[] args)
否则 JavaFX 应用程序类必须扩展javafx.application.Application