我已经在很多网站上查过但没有得到正确答案。任何人都可以告诉我答案。
答案 0 :(得分:2)
它们是强制性的,因为它们构成了方法签名的一部分,没有它们,java不会将该方法识别为入口点。
每当您决定阅读/使用它们时,都会读取参数,除非您需要,否则不需要读取它们。
从命令行调用程序时它们被填充,它们是命令行参数。
答案 1 :(得分:1)
澄清:
java中的main方法是否必须使用字符串参数?
在方法的签名中是,主方法必须看起来像
public static void main(String args[]) {
如果你修改它,那么该方法永远不会被识别为应用程序的入口点,例如:
public static void main( ) {
你会因为缺少主要方法而抱怨错误......
另一方面,这样做
public static void main(String args[]) {
并不意味着您需要强制启动带有字符串的应用程序,实际上您不能传递任何参数,这意味着数组args没有元素
参数读取的时间是什么时候?
一旦进入主要方法......
你可以这样做:
public static void main(String args[]) {
System.out.println(args.length);
所以如果你没有传递任何参数你会得到0,或者你传递n参数n(如果你是从其他语言如C ++或Python那里得到的,那么应用程序的名称被认为是索引的参数,这很棘手0,不要让他们欺骗你:))
答案 2 :(得分:1)
String...args
方法中的main
参数为varargs。
它将表示运行Java应用程序时提供的所有参数。
args
确实是一个String数组(String[]
)。如果不指定参数,则数组为空。