Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/357.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何使程序允许在命令行上输入空格分隔的整数列表(JAVA)_Java_Eclipse_Command Line_Command Line Arguments_Args - Fatal编程技术网

如何使程序允许在命令行上输入空格分隔的整数列表(JAVA)

如何使程序允许在命令行上输入空格分隔的整数列表(JAVA),java,eclipse,command-line,command-line-arguments,args,Java,Eclipse,Command Line,Command Line Arguments,Args,到目前为止,我从未使用过命令行,也不知道如何使用它。现在,我正在eclipse上运行InsertionSort程序,并在驱动程序中将我的整数数组声明为: int arr[] = {99, 37, 17, 5, 12, 33}; 我该如何在命令行上允许这种输入,并以这种方式打印结果呢?如果有关系的话,我会用MAC电脑。谢谢 一种可能的方法: public class Numbers { public static void main(String[] args) {

到目前为止,我从未使用过命令行,也不知道如何使用它。现在,我正在eclipse上运行InsertionSort程序,并在驱动程序中将我的整数数组声明为:

 int arr[] = {99, 37, 17, 5, 12, 33}; 
我该如何在命令行上允许这种输入,并以这种方式打印结果呢?如果有关系的话,我会用MAC电脑。谢谢

一种可能的方法:

public class Numbers {
    public static void main(String[] args) {
        List<Integer> intList = new ArrayList<>();

        for (String arg : args) {
            try {
                intList.add(Integer.parseInt(arg));
            } catch (NumberFormatException e) {
                System.err.println("not an integer: " + arg);
            }
        }

        System.out.println(intList);
    }
}

你试过什么了吗?您可能想使用
扫描仪
类。有很多方法(不是双关语)可以做到这一点。简单的谷歌搜索可以找到,所以我恐怕不得不@TimBiegeleisen我被要求不要使用Scanner然后你可以尝试
java YourProgramClass 99 37…
然后在
String[]args
中访问这些数字。
$ javac Numbers.java
$ java Numbers 3 6 4
[3, 6, 4]