我刚开始用Java写程序。下面的Java代码是什么意思?

public static void main(String[] args)

什么是字符串[]参数? 什么时候使用这些参数?

源代码和/或示例优先于抽象的解释。


当前回答

下面的答案是基于我的理解和一些测试。

什么是字符串[]参数?

Ans:

String[] ->我们知道这是一个简单的String数组。

args ->是一个数组的名字,它可以是任何东西(例如,a, ar,参数,参数)编译器和执行没有问题,我也测试了。

E.g:

public static void main(String[]参数) public static void main(String[]参数)

什么时候使用这些参数?

nsa - >

开发人员非常聪明地设计了主要功能。实际思考是很深刻的。它基本上是在C和c++基于命令行参数的考虑下开发的,但现在没有人更多地使用它。

1-用户可以输入任何类型的数据从命令行可以是数字或字符串&必须接受它的编译器,我们应该使用哪种数据类型?看东西2

2- String是支持Java中所有基本数据类型的数据类型,如int, long, float, double, byte, shot, char。您可以轻松地以任何基本数据类型解析它。

例:下面的程序已经编译并执行了,我也进行了测试。

输入为-> 1 1

// one class needs to have a main() method
public class HelloWorld
{
  // arguments are passed using the text field below this editor
  public static void main(String[] parameter)
  {    
System.out.println(parameter[0] + parameter[1]); // Output is 11

//Comment out below code in case of String
    System.out.println(Integer.parseInt(parameter[0]) + Integer.parseInt(parameter[1])); //Output is 2
    System.out.println(Float.parseFloat(parameter[0]) + Float.parseFloat(parameter[1])); //Output is 2.0    
    System.out.println(Long.parseLong(parameter[0]) + Long.parseLong(parameter[1])); //Output is 2    
    System.out.println(Double.parseDouble(parameter[0]) + Double.parseDouble(parameter[1])); //Output is 2.0    

  }
}

其他回答

下面的答案是基于我的理解和一些测试。

什么是字符串[]参数?

Ans:

String[] ->我们知道这是一个简单的String数组。

args ->是一个数组的名字,它可以是任何东西(例如,a, ar,参数,参数)编译器和执行没有问题,我也测试了。

E.g:

public static void main(String[]参数) public static void main(String[]参数)

什么时候使用这些参数?

nsa - >

开发人员非常聪明地设计了主要功能。实际思考是很深刻的。它基本上是在C和c++基于命令行参数的考虑下开发的,但现在没有人更多地使用它。

1-用户可以输入任何类型的数据从命令行可以是数字或字符串&必须接受它的编译器,我们应该使用哪种数据类型?看东西2

2- String是支持Java中所有基本数据类型的数据类型,如int, long, float, double, byte, shot, char。您可以轻松地以任何基本数据类型解析它。

例:下面的程序已经编译并执行了,我也进行了测试。

输入为-> 1 1

// one class needs to have a main() method
public class HelloWorld
{
  // arguments are passed using the text field below this editor
  public static void main(String[] parameter)
  {    
System.out.println(parameter[0] + parameter[1]); // Output is 11

//Comment out below code in case of String
    System.out.println(Integer.parseInt(parameter[0]) + Integer.parseInt(parameter[1])); //Output is 2
    System.out.println(Float.parseFloat(parameter[0]) + Float.parseFloat(parameter[1])); //Output is 2.0    
    System.out.println(Long.parseLong(parameter[0]) + Long.parseLong(parameter[1])); //Output is 2    
    System.out.println(Double.parseDouble(parameter[0]) + Double.parseDouble(parameter[1])); //Output is 2.0    

  }
}

args包含调用时传递给Java程序的命令行参数。例如,如果我像这样调用程序:

$ java MyProg -f file.txt

然后args将是一个包含字符串"-f"和"file.txt"的数组。

我认为上面的答案很好地涵盖了String args[]只是一个字符串参数的数组,当你运行它时,你可以传递给你的应用程序。为了完成,我可能会补充说,将传递给主方法的方法参数定义为String类型的变量参数(varargs)也是有效的:

public static void mainargs)

换句话说,main方法必须接受String数组(String args[])或varargs (String…Args)作为方法参数。args这个名字也没有什么神奇之处。你也可以写参数,甚至freddiefujiwara,如下所示:

public static void main (String[]参数)

public static void main (String[] freddiefujiwara)

dataType[] arrayRefVar是首选样式。dataType arrayRefVar[]样式来自C/ c++语言,并在Java中被采用,以适应C/ c++程序员。

String[] args参数是一个字符串数组,当你在操作系统中通过命令行运行你的应用程序时,它作为参数传递。

假设您已经编译并打包了一个myApp.jar Java应用程序。当然,你可以在操作系统中双击应用程序来运行应用程序,但你也可以使用命令行方式运行它,比如(在Linux中):

user@computer:~$ java -jar myApp.jar

当你调用你的应用程序传递一些参数时,比如:

user@computer:~$ java -jar myApp.jar update notify

java -jar命令将你的Strings更新和通知传递给你的公共静态void main()方法。

然后你可以这样做:

System.out.println(args[0]); //Which will print 'update'
System.out.println(args[1]); //Which will print 'notify'