如何在命令行参数中使用省略号?

时间:2014-07-15 23:33:01

标签: java arrays command-line-parsing

我刚刚学会了两件事 - 1)如何在JAVA中使用省略号,即如何为函数定义可变长度参数列表。 以下是一个演示上述概念的程序。

public class variable
{
    public static void main(String[] args)
    {
        int d1=2;
        int d2=3;
        int d3=4;
        int d4=5;
        System.out.print(average(d1,d2,d3));
        System.out.print(average(d1,d2));
        System.out.print(average(d1,d2,d3,d4));
    }
    public static int average(int... numbers)
    {
        int total=0;
        for(int i:numbers)
        {
            total+=i;
        }
        return total/numbers.length;
    }
}

2)如何使用命令行参数。以下是使用此概念的程序 -

public class argument
{
    public static void main(String[] args)
    {
        if(args.length!=3)
        {
            System.out.println("Please provide valid 3 inputs to add them all");    
        }
        else
        {
            int first = Integer.parseInt(args[0]);
            int second = Integer.parseInt(args[1]);
            int third = Integer.parseInt(args[2]);
            System.out.println((first+second+third));
        }
    }
}

现在......我的问题是如何在我想通过命令行输入的程序中使用省略号?

假设我想通过命令行参数添加3个数字,但我的朋友想要一起添加5个数字。我如何使用省略号来满足我和朋友的要求?

3 个答案:

答案 0 :(得分:0)

click on run menu > run configuration > arguments > program arguments

在此处设置参数

答案 1 :(得分:0)

您不需要varargs来执行此操作。由于args参数已经是一个数组,让我们从数组的角度考虑这个问题。这些是您需要完成任务的步骤:

  1. 将String数组转换为int数组。

  2. 将数字添加到int。

  3. 数组中

    我建议你试着弄清楚如何做到这些。如果你遇到这样的具体问题,请回过头来回答更多问题。

答案 2 :(得分:0)

单击“运行”菜单,然后单击“运行配置...”,然后单击“参数”选项卡。 只需在此处输入5个数字

enter image description here

之后只需修改您的代码,即可阅读args []

中的所有五个输入

在您的代码中,您可以使用返回长度的args.length来检查输入的时长。

之后执行这样的for循环:

    int totalSum = 0;
    for(int i = 0; i < args.length; i++){
       totalSum = totalSum + args[i];
    }
    System.out.printline(totalSum);

这将接受任何长度的输入并将它们相加。