Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/312.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java命令行设置参数,带“quot=&引用;_Java_Command Line - Fatal编程技术网

Java命令行设置参数,带“quot=&引用;

Java命令行设置参数,带“quot=&引用;,java,command-line,Java,Command Line,我有一个方法: public String sample (String A, int B, int C){ String fin = ""; if(C==0){ fin="fail"; } return fin; } 我想在命令行中这样运行它:d:>java-jar prac.jar B=5 如何在命令行中用“=”设置参数?在主方法中,处理传递的参数: public static void main(String[] args) {

我有一个方法:

public String sample (String A, int B, int C){
     String fin = "";
     if(C==0){
     fin="fail";
     }
     return fin;
}
我想在命令行中这样运行它:
d:>java-jar prac.jar B=5

如何在命令行中用“=”设置参数?

在主方法中,处理传递的参数:

public static void main(String[] args) {
    // args[0] = parameter 1;
    // args[1] = parameter 2;
    // args[n] = parameter n+1;
    sample(args[0], Integer.parseInt(args[1]), Integer.parseInt(args[2])); 
}

主要需要执行以下操作,如将参数解析为整数:

使用
Integer.parseInt()
。。。并验证输入是否为可解析的数值

public static void main(String[] args) {
    System.out.println(sample(args[0], Integer.parseInt(args[1]), Integer.parseInt(args[2])));
}

public static String sample(String A, int B, int C) {
    String fin = "";
    if (C == 0) {
        fin = "fail";
    }
    return fin;
}
并从cmd运行它

java StringA n1 n2

例子:

您忘记了
新建
。或者更好的是,
Integer.parseInt()
。如何在命令行中设置参数?就像我写的,d:>java-jarprac.jarb=5@zsocc毫无意义的问题。您的
sample
方法需要3个参数,因此仅传递一个参数是不够的。这是我的问题,如果我不为参数设置值,它将获得默认值,(或者应该)不,您错了。如果您像我在这个main方法中所做的那样使用参数,那么您可以根据变量在参数中的位置为特定变量赋值。如果您运行
d:>java-jar prac.jar 5
,那么传递给sample方法的第一个参数将等于5。为什么不使用第三方java CLI解析器呢?可以找到几乎完整的可用CLI解析器列表。