从命令行程序返回参数

时间:2017-04-17 07:50:36

标签: java command-line command-line-interface command-line-arguments

我试图在java中通过命令行传递一个String,但它只返回第一个值,即args[0]

以下是我所做的

public class CommandLine
{
    public static void main(String[] args)
    {
        int i;
        i = args[0].length(); //throws error here if args.length();
        System.out.println(i); //checking length, return with args[0] only
         while(i>0)
        {
            System.out.println(args[0]);
            i++;
        } 
    }
}
  

我应该怎样做才能改善这一点并使其发挥作用?

1 个答案:

答案 0 :(得分:2)

以下几点需要解决

  1. 在您的逻辑命令行中,调整长度的方式是错误的。

  2. 循环条件不适合您的要求,而且它是一个无限循环或永不结束循环,它会降低代码的性能。在代码中永远不要使用无限循环。

  3. 3.每次在循环内打印相同的索引,即.. args [0]。

    代码:

    public static void main(String[] args)
        {
            int i=0;
            int len = args.length;   //use length only in this case;
            System.out.println(len); // this will return it properly now
            while(i<len)
            {
                System.out.println(args[i]);
                i++;
            } 
        }