do while循环体里面try catch语句的执行

    int flag=0;
    do{
	try{
	    id=input.nextInt();
	    flag=0;
	}
	catch(Exception e){
	    System.out.println("请输入整数类型的ID");
	    flag=1;
	}
    }while(flag==1);
    这段程序如果输入不是整型会无限循环"请输入整数类型的ID",为什么抛出异常后下一次执行do语句不应该执行try部分吗?
   预先设定是想要提示后下一次重新输入,执行 id=input.nextInt();语句,
   请教大神们这段程序问题出现在哪里了


要做Java大师
浏览 2044回答 2
2回答

olaolaola

} catch (InputMismatchException e) { System.out.println("请输入整数类型的ID!"); console.nextLine(); // 跳过异常流的输入
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java