【问题标题】:How do I set the size of the array my command line arguments will be stored in?如何设置将存储我的命令行参数的数组的大小?
【发布时间】:2017-08-02 01:08:33
【问题描述】:

我基本上想将我的用户输入存储在一个大小为 3 的数组中。当我似乎将 3 放在 main (String [3] args) 中时,它似乎并没有达到我想要的效果。我该如何解决这个问题?

如果有帮助,练习要求我:用以下代码填写 Ex4 类的类方法 main 创建一个包含字符串的大小为 3 的数组,并用命令行参数填充它。

谢谢。

 public class Ex4 {
 public static void main(String[] args) 
 {
 if (args.length == 1)
 {
     System.out.println(args[0]);
 }

 else if (args.length == 2 || args.length == 3)
 {
     System.out.println(args[0]);
     System.out.println(args[1]);
 }

 else 
    System.out.println("Too many arguments");
}
}

【问题讨论】:

  • 实现这一目标的唯一方法是使用 if 语句检查 args 的长度,如果长度 >= 3 则继续执行,否则打印错误。你不能有一个只有在你传入三个参数时才有效的 main 方法——java 不会处理这些错误,但你的程序应该

标签: java arrays command-line terminal command-line-arguments


【解决方案1】:

您无法控制传递给main 方法的数组的大小。它将自动分配传递给程序的参数的大小。

【讨论】:

    【解决方案2】:

    你把它倒过来了。

    您通过启动 JVM 时传递的参数数量隐式定义该数组的大小。

    在运行时,在您的 Java 代码中,您只能检查该数组的实际长度。例如,向用户提供一条错误消息,告诉他所需的参数数量及其含义。

    【讨论】:

      猜你喜欢
      • 2017-12-21
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-07-01
      • 2013-05-08
      • 2022-10-13
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多