在java main方法中,
中String args[]
的目的是什么
public static void main (String args[]) ?
答案 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。