首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >catch语句重复执行

catch语句重复执行
EN

Stack Overflow用户
提问于 2020-04-04 19:55:37
回答 1查看 20关注 0票数 0

我正在尝试实现一个(重新)try-catch块。

代码语言:javascript
复制
Scanner sc = new Scanner(System.in);

while (true){
    try {
        t = sc.nextInt();
        break;
    } catch (Exception e) {
        System.out.println("Please enter a whole number without any symbol(s)!");
    }
}

但这里的问题是,控件再次进入catch块,并且在此之前从未尝试执行try块。

EN

回答 1

Stack Overflow用户

发布于 2020-04-04 20:10:43

这就是我是如何解决这个问题的。

代码语言:javascript
复制
/*java.util.*/Scanner sc = new /*java.util.*/Scanner(System.in);

while(true)
{
  if(sc.hasNextInt()){ t=sc.nextInt(); break;}
  System.out.println("Please enter a whole number integer (between -2,147,483,649 and 2,147,483,648) without any symbol(s)!");
  sc.nextLine(); // hasNextInt() only scans the current line in the buffer
}
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/61027688

复制
相关文章

相似问题

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