如何从单个输入中扫描不确定的数字列表?

时间:2015-03-19 18:35:46

标签: java java.util.scanner

如何从单个输入中扫描不确定的数字列表?

我做了一个简短的谷歌搜索,发现了hasNextInt(),但它只停止扫描,如果最后一个输入不是整数,而我需要它停止,如果它是最后一个整数。例如,它将继续询问我的列表是否以整数结束。

我的代码:

 System.out.println("Enter a list of numbers");
        int n = 0;
        while (input.hasNextInt()){
            n = input.nextInt();
            List.push(n);
        }
        List.displayStack();

1 个答案:

答案 0 :(得分:0)

您可以改用hasNext()。然后解析输入并获取数字 -

    int n=0;
    Scanner input = new Scanner(System.in);

    while (input.hasNext()) {
        try {
            n = Integer.parseInt(input.nextLine());
            //do something eg.- you have done
            //List.push(n);
        } catch (NumberFormatException nfe) { 
            //handle exception
        }
   }

现在,如果输入不是整数,那么它将不会停止。相反,它将用于捕获块。由于catch块仍在while循环中,因此您现在仍可以使用新输入。

希望它会有所帮助 非常感谢