main方法允许我们指定启动应用程序时要执行的代码,这样它所在的类将成为我们应用程序的主类或入口点。例如,考虑以下包含 main 方法的 Main 类:
public class Main { public static void main(String[] args) { System.out.println("Hola Mundo!"); } }
在最新版本的 Java 中,我们可以使用命令 java Main.java 从终端运行此类,我们将看到消息 Hello World! 打印在控制台中。 (或来自 IDE 本身)。我们执行的命令由两部分组成,第一个是java,它是负责执行Java代码的命令,第二个是Main.java,它是包含main方法的类的名称,此时我们使用将参数传递给某些东西的概念,在本例中是我们要执行的类的名称。
注意: - 符号后跟字母或单词通常用于指示它是一个参数,例如 -version 可以获取我们系统上安装的 Java 版本。每个节目都可以有自己的情节和含义。
java -version
理解这一点,String[] args 的目的是允许我们在运行应用程序时将参数传递给应用程序,因此我们在类名后面放置的任何参数都将存储在 args 数组中,我们将能够从 main 方法访问它们。这样,如果我们执行 java Main.java,那么我们放在 Main.java(类名)之后并用空格分隔的所有内容都将被视为参数并存储在 args 数组中。
让我们开始运行我们的应用程序,不传递任何参数,并借助 Arrays.toString 方法通过控制台打印 args 数组:
import java.util.Arrays; public class Main { public static void main(String[] args) { System.out.println(Arrays.toString(args)); } }
java Main.java # Salida []
我们得到一个空数组,因为我们没有传递任何参数,但是如果我们执行以下命令,我们会得到不同的结果:
java Main.java hola mundo # Salida [hola, mundo]
我们传递两个参数 hello 和 world,它们在 main 方法中被处理为 args,因此我们可以访问它们并使用它们执行操作,我们可以根据需要传递尽可能多的参数。最后,String[] args 的目的是存储我们在运行应用程序时传递的所有参数,并允许我们从 main 方法访问它们。最复杂的部分是处理收到的所有参数,例如,要制作命令行应用程序,我们必须处理、验证和转换参数,以便它们在我们的应用程序中有用。
我们想要制作一个小应用程序,通过控制台按以下顺序接收 3 个参数:
根据这些参数我们将执行相应的操作并在控制台中显示结果。为此,首先我们验证是否传递了 3 个参数,然后将参数转换为相应的数据类型,在本例中,第一个和第三个参数转换为 int 类型(数字),并且由于参数是文本字符串,因此不是需要转换算术运算符。随后,我们执行相应的操作,并将结果显示在控制台中。
public class Main { public static void main(String[] args) { System.out.println("Hola Mundo!"); } }
现在我们可以从终端运行我们的应用程序并传递相应的参数:
java -version
import java.util.Arrays; public class Main { public static void main(String[] args) { System.out.println(Arrays.toString(args)); } }
能够向 Java 应用程序传递参数并不是终端所独有的,它也可以从 IDE 完成,这就是它通常的工作方式,例如,如果我们使用 IntelliJ IDEA,我们可以从 IDE 传递参数应用程序的执行配置。
总之,我们可以注意到这是一种灵活的机制,能够将参数传递给我们的应用程序,并允许我们根据它们的值执行特定的操作,尽管处理起来可能很复杂,对于这些情况我们可以使用让我们的工作更轻松的实现,例如 Apache Commons CLI 或 JCommander。如果您想查看如何在命令行应用程序中使用 String[] args 的另一个示例,您可以检查以下链接。
以上是Java main 方法中 String[] args 的用途是什么?的详细内容。更多信息请关注PHP中文网其他相关文章!