Java-命令行参数

时间:2020-02-23 14:36:27  来源:igfitidea点击:

在本教程中,我们将学习Java编程语言中的命令行参数。

从本教程系列开始以来,我们一直在编写main方法,如下所示。

class NameOfTheClass {
  public static void main(String[] args) {
    //some code...
  }
}

注意! main方法的参数列表是String [] args。

因此,我们有一个变量" args",它是一个String数组。

当我们运行程序时,我们可以从命令行将一些参数传递给我们的代码,并将其保存在此" args"变量中,以便以后在我们的代码中使用。

命令行参数的语法

java cmdLine command_list

其中," cmdLine"是类的名称," command_list"是传递给该类的参数的列表。

注意!第一个命令行参数存储在索引0中,第二个命令行参数存储在索引1中,依此类推。

注意!所有命令行参数均以字符串形式传递。

例1:用Java编写程序以打印传递的参数总数

class Example {
  public static void main(String[] args) {

    //total number of arguments passed
    int len = args.length;
    System.out.println("Total number of arguments: " + len);

  }
}
$javac Example.java 
$java Example
Total number of arguments: 0

$java Example Hello World
Total number of arguments: 2

$java Example My name is 
Total number of arguments: 5

例2:用Java编写程序以打印所有传递的参数

class Example {
  public static void main(String[] args) {

    //total number of arguments passed
    int len = args.length;
    System.out.println("Total number of arguments: " + len);

    System.out.println("Arguments:");
    for(int i = 0; i < len; i++) {
    	System.out.println("Index: " + i + " Arg: " + args[i]);
    }

  }
}
$javac Example.java 
$java Example My name is 
Total number of arguments: 5
Arguments:
Index: 0 Arg: My
Index: 1 Arg: name
Index: 2 Arg: is
Index: 3 Arg: 
Index: 4 Arg: 

示例#3:用Java编写程序,以两个字符串值作为命令行参数并检查是否相等

为此,我们将使用String类提供的"等于"方法。

class Example {
  public static void main(String[] args) {

    //total number of arguments passed
    int len = args.length;
    
    //check strings provided
    if (len < 2) {
    	System.out.println("Two strings required.");
    }
    else {
    	//check if provided strings are equal
    	if (args[0].equals(args[1])) {
    		System.out.println("Strings are equal.");
    	}
    	else {
    		System.out.println("Strings are not equal.");
    	}
    }

  }
}

输出

$javac Example.java 
$java Example
Two strings required.

$java Example Hello
Two strings required.

$java Example Hello World
Strings are not equal.

$java Example Hello hello
Strings are not equal.

$java Example Hello Hello
Strings are equal.