你的位置:首页 > Java教程

[Java教程]关于hasNextInt判断后无限循环输出else项的解决办法

 1 import java.util.Scanner; 2  3 public class Test_hasNextInt { 4  5   /** 6    * @param args 7   */ 8   public static void main(String[] args) { 9     // TODO Auto-generated method stub10     Scanner sc = new Scanner(System.in);      //关于hasNextInt判断后无限循环输出else项的解决办法11     String next;12     int i;13     while(true) {14 //      Scanner sc = new Scanner(System.in);    //第一种处理方法,把扫描器拿到里面来,每次循环都创建一个新的扫描器15       System.out.println("请输入一个整数");16       if (sc.hasNextInt()) {17         i = sc.nextInt();18         System.out.println(i);19       } else {20         next = sc.next();            //第二种处理方法,把scanner缓存里的非int值接收掉21         System.out.println("您输入的是:" + next + ",请重新输入");22       }23     }24   }25 26 }