首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Java scanner -无法读取用户输入

Java scanner -无法读取用户输入
EN

Stack Overflow用户
提问于 2014-12-21 21:48:07
回答 2查看 931关注 0票数 2

我想读取用户输入,如下所示: 11 12 13 14 15 16

代码语言:javascript
运行
复制
Scanner sc = new Scanner(System.in);
    while(sc.hasNext()){
        System.out.println(sc.next());

    }
    System.out.println("Test");

但它更新的是走出while循环并输出"Test“。我怎么能读到这些输入呢?

EN

回答 2

Stack Overflow用户

发布于 2014-12-21 21:59:53

你可以根据你是想退出还是不想退出来打破循环。

代码语言:javascript
运行
复制
 public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        while(sc.hasNext()){
            String next = sc.next();

            if (next.equals("q")) { //if user press q then break the loop
                break;
            }
            System.out.println(next);

        }
        System.out.println("Test");
    }
票数 1
EN

Stack Overflow用户

发布于 2014-12-21 22:00:53

使用如下api:

代码语言:javascript
运行
复制
while(sc.hasNextInt()){
    int aba= sc.nextInt();
    if (aba == 0) {//or even non numeric value here would let this loop exit
        break;
    }
}

因此您需要输入0,或者甚至以其他方式输入非数字值才能跳出循环。nextLine方法只会读取整行一次,然后您需要解析它,然后将其转换为整数,所以使用sc.nextInt会很好,它将为您做这项工作。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/27589960

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档