Java开发网 Java开发网
注册 | 登录 | 帮助 | 搜索 | 排行榜 | 发帖统计  

您没有登录

» Java开发网 » Java SE 综合讨论区  

按打印兼容模式打印这个话题 打印话题    把这个话题寄给朋友 寄给朋友    该主题的所有更新都将Email到你的邮箱 订阅主题
flat modethreaded modego to previous topicgo to next topicgo to back
作者 Re:[求教]Scanner阻塞问题 [Re:puxinye]
micsolaris





发贴: 36
积分: 5
于 2008-11-29 18:48 user profilesend a private message to usersearch all posts byselect and copy to clipboard. 
ie only, sorry for netscape users:-)add this post to my favorite list
import java.util.Scanner;
public class Test{
  public static void main(String[] args){
    Scanner scan=new Scanner(System.in);
Double doub;
while(true){
System.out.println("Input Something: ");
try{
doub=scan.nextDouble();
break;
}catch(Exception e){
System.out.println("Error!");
scan = new Scanner(System.in);
continue;
}

}

  }
}

这样就可以解决。
原因是每当scan.next()的时候就会跳到新的起点,所以第一次如果不是Double,那么跳到第二点的时候,但是你while里执行的语句并没有要求scan重新赋值,所以自然总会出现异常,所以也就不断循环。




初学者与<书>

话题树型展开
人气 标题 作者 字数 发贴时间
9168 [求教]Scanner阻塞问题 puxinye 476 2008-11-29 15:18
7953 Re:[求教]Scanner阻塞问题 micsolaris 477 2008-11-29 18:48

flat modethreaded modego to previous topicgo to next topicgo to back
  已读帖子
  新的帖子
  被删除的帖子
Jump to the top of page

   Powered by Jute Powerful Forum® Version Jute 1.5.6 Ent
Copyright © 2002-2021 Cjsdn Team. All Righits Reserved. 闽ICP备05005120号-1
客服电话 18559299278    客服信箱 714923@qq.com    客服QQ 714923