关于java中Scanner类的阻塞问题 你用while当然会一直等待输入了,如果只想得到一个数据,把while换成if就行了 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 楼主是分不清while和if的作用吗? Scanner类不应该用在实现这个功能上。 楼主没理解while的语句的含义,你可以while里面加判段,来退出 你的scanner是用System.in构造的,没输入ctrl-z或非法字符之前它会一直等待输入,你可以试着用一个文件(里面只能有数字和空白)构造scanner,文件读完就停了 while会一直阻塞等待键盘输入 没法解决 我觉得你的程序是对的。目的是如果输入一直是数字,那就可以继续输入,如果不是数字,那程序就退出了。如果非要一次就退出,改成:Scanner input=new Scanner(System.in); int data=input.nextInt(); System.out.print(data+" "); Scanner input = new Scanner(System.in); while (!input.hasNextInt()) { String str = input.next(); } int i = input.nextInt(); System.out.println(i); java 练习题 大家帮我看看还有什么地方可以改进的 大家也可以收集 大家帮我看看我那些方面还需要改进的 关于提交action后刷新页面的问题 Java程序执行完时,如何返回一个数值? 一个关于RMI部署的问题 设计一个数据库监听器,尽量做到时时监听,有什么好的方法? 关于多层分类结构的算法 [高分求教分页思想][高手快进] 怎样实现单击按钮后,弹出另一个窗体 关于把事件传递给容器的问题(100%给分) 大家新年好,散分啦!!! 关于通讯编程如何建模? 学习java有什么学习方法吗?
int data=input.nextInt();
System.out.print(data+" ");
Scanner input = new Scanner(System.in);
while (!input.hasNextInt()) {
String str = input.next();
}
int i = input.nextInt();
System.out.println(i);