整数数组作为命令行参数以及其他命令
Array of integers as command line argument along with other commands
所以对于我的 JAVA 程序,用户必须使用命令行或 Linux 环境提供 6 个参数。这 6 个命令之一是一个数字列表,我在程序中将它们作为整数数组。
我不太熟悉它如何能够读取数字列表中的第 6 个参数?计算机不会将其视为多个参数而不是一个参数的多个数字吗?
任何帮助将不胜感激:)
没错,Java 会将多个间隔参数解释为各自的参数,并将每个参数单独放入 main
的 String[] args
个参数中。但是,您仍然可以通过指定最后一个参数必须是数字列表来处理这个问题。这样做,您可以简单地在第 5 个参数之后循环,并确信您得到的所有内容都应该是列表的一部分。
public static void main(String[] args) {
// handle first 5 args
for (int i = 5; i < args.length; ++i) {
// everything accessed by args[i] at this point is a part of your list
}
}
然后您可以通过 java
命令指定输入
java -jar MyApp.jar arg1 arg2 arg3 arg4 arg5 int1 int2 int3 int4 int5 int6
# int1 to int6 will be read by the loop
所以对于我的 JAVA 程序,用户必须使用命令行或 Linux 环境提供 6 个参数。这 6 个命令之一是一个数字列表,我在程序中将它们作为整数数组。
我不太熟悉它如何能够读取数字列表中的第 6 个参数?计算机不会将其视为多个参数而不是一个参数的多个数字吗? 任何帮助将不胜感激:)
没错,Java 会将多个间隔参数解释为各自的参数,并将每个参数单独放入 main
的 String[] args
个参数中。但是,您仍然可以通过指定最后一个参数必须是数字列表来处理这个问题。这样做,您可以简单地在第 5 个参数之后循环,并确信您得到的所有内容都应该是列表的一部分。
public static void main(String[] args) {
// handle first 5 args
for (int i = 5; i < args.length; ++i) {
// everything accessed by args[i] at this point is a part of your list
}
}
然后您可以通过 java
命令指定输入
java -jar MyApp.jar arg1 arg2 arg3 arg4 arg5 int1 int2 int3 int4 int5 int6
# int1 to int6 will be read by the loop