如何设置将存储我的命令行参数的数组的大小?
Posted
技术标签:
【中文标题】如何设置将存储我的命令行参数的数组的大小?【英文标题】: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 不会处理这些错误,但你的程序应该
【参考方案1】:
您无法控制传递给main
方法的数组的大小。它将自动分配传递给程序的参数的大小。
【讨论】:
【参考方案2】:你把它倒过来了。
您通过启动 JVM 时传递的参数数量隐式定义该数组的大小。
在运行时,在您的 Java 代码中,您只能检查该数组的实际长度。例如,向用户提供一条错误消息,告诉他所需的参数数量及其含义。
【讨论】:
以上是关于如何设置将存储我的命令行参数的数组的大小?的主要内容,如果未能解决你的问题,请参考以下文章