命令行参数和默认值(如何重置)

时间:2017-02-12 22:18:34

标签: java

public static void main(String[] args) {
    System.out.println(th(365, 50));// the default value is 365 and 50
      //i want to reset these number from command line 
}

我尝试使用if,else

 public static void main(String[] args){
    int[] array=new int[args.length];
    if(array[0]==null)  // but incomparable types int and null
         System.out.println(th(365, 50));
    else{
        for (int i=0;i<args.length;i++){
            array[i]=Integer.parseInt(args[i]);
        }
         System.out.println(th(array[0], array[1]));
    }
}

怎么做。我真的很感激你能给予的任何帮助

1 个答案:

答案 0 :(得分:1)

要做的第一件事是检查命令行参数的数量是否是预期的,即在你的情况下为2:

if(args.length!=2){
    System.out.println("Two arguments expected!");
    exit(-1);
}

然后你可以创建数组并解析输入:

int[] array=new int[2];
array[0]=Integer.parseInt(args[0]);
array[1]=Integer.parseInt(args[1]);
System.out.println(th(array[0], array[1]));

当然,您应该将一个名为 th 的方法定义为此类的成员,该方法接受两个整数并返回一个String。另外,如果两个输入参数不是整数,则parseInt方法将抛出异常。