JAVA的hasNext()一直为死循环!

20 篇文章 1 订阅
16 篇文章 0 订阅

在java中监听是否有输入一般使用hasNext()方法,但是一个问题,例如下面代码:

while(scanner.hasNext()){
            bu=bu.append(scanner.next()+"\r");
            System.out.println(bu.toString());
        }

此时hasNext()便会一直循环下去,形成死循环!

解决方法一:在hasNext方法的括号中加入结束的条件,调用重载方法hasNext(String pattern),当监听到pattern时便会终止执行

例如:

while(scanner.hasNext("\r")){

}

其中"\r"为监听到回车!

解决方法二:直接使用快捷键Ctrl+D,注:当编译环境为IntelliJ IDEA 的时候才有效

 

参考链接:https://blog.csdn.net/Topdandan/article/details/78162518

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值