java中如何向Main传递参数

Seb*_*eki -2 java methods

我理解将参数传递给方法等,但我不明白如何传递额外的东西,例如字符串(在普通字符串数组之外)。

我遇到的问题是我有一个包,它查看一个文件,然后对其执行操作,然后决定其中是否有某些文本。

如果有的话就会发生其他事情。碰巧这些其他东西包含在我已经编码的另一个包中。所需要的只是将包 A 中的字符串传递给包 B 中的一个类中的 main 方法。我只是不知道如何传递它。有没有办法添加类似的内容:

public static void main(String[] args,String filename) 
Run Code Online (Sandbox Code Playgroud)

但那你怎么称呼它呢?只是通过传递main(filename)并假设 String[] args 是从 JVM 自动调用的吗?

dor*_*ack 5

String[]如果您碰巧从 cmd.exe 或 Bash 运行应用程序,则 main 方法的参数包含传递给应用程序的命令行参数。这是给出命令行参数的语法:

java [name of the class that has the main method] [arguments]
Run Code Online (Sandbox Code Playgroud)

使用 .jar 文件而不是 .class 文件:

java -jar [full path of the jar] [arguments]
Run Code Online (Sandbox Code Playgroud)

每个参数都用空格 (U+0020) 分隔。要创建包含空格的参数,请将其用双引号引起来。例子:

java Foo "this is one argument"
Run Code Online (Sandbox Code Playgroud)

请注意,任何 Java 应用程序中的 main 方法都必须只有一个参数 -String[]保存命令行参数。