java中main方法中String args []的用途

时间:2014-11-15 12:12:54

标签: java

在java main方法中,

String args[]的目的是什么
public static void main (String args[])  ?

4 个答案:

答案 0 :(得分:1)

args[]是一个String数组。因此,您可以将多个String传递给您的方法:

args[0] = "Hello";
args[1] = "World";
...

答案 1 :(得分:1)

主要方法只有一种,因为它是标准化的形式。 Oracle不知道程序员需要多少个参数以及它们的类型。因此,使用类型为args[]的{​​{1}},您可以将String个参数传递给您的程序。然后,您可以将其解析为Java中的任何基本类型。

以下是使用Java将参数传递给应用程序的示例:

N

传递的每个值都由空格分隔,并且根据位置,您可以检索和操作它们,例如,如果您需要位置4处的arg并将其转换为java MyApp arg1 arg2 arg3 arg4 ... argN ,则可以执行以下操作:

double

此外,这个表单被认为传递了一些参数来定义和配置应用程序的某些行为,因此使用一个唯一的数组就可以完成。

答案 2 :(得分:0)

当您从命令行运行程序或在IDE中指定程序参数时,这些参数将按空格分隔(" hello world"变为" hello"和"世界",例如)并在第一个参数中给你的程序。即使存在其他阵列,也没有用处。

答案 3 :(得分:0)

你在质疑为什么Java(同时是C / C ++)主线程只有两个参数。 Java类需要使用主类中定义的main方法。否则你会看到错误:

 "The program compiled successfully, but main class was not found.
  Main class should contain method: public static void main (String[] args)."

这只是您需要遵守的Java要求(如果您愿意,可以在无声抗议下)。

与此相反,在C / C ++ / C ++ 11中,你需要一个int main方法,但不需要任何争议。即C ++主类要求允许以下内容:

#include <iostream>

int main(void) { return 0; }

请注意,在C / C ++中,您还可以在main中传递一个整数作为参数。

#include <iostream>
int main(int argc){ return 0;}

总而言之,C / C ++ / Java每个都有自己的标准,你必须坚持。你可以说某些事情是不对的,但只要你是那些参与标准委员会的人之一,我认为你不能做任何改变。

有关C main的问题已得到解答here。此外,使用String [] args的main方法的必要性可能已经解释过here