首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > J2SE开发 >

小弟我想从控制台输入一个整数,如果不是整数重新输入

2012-02-28 
求助:我想从控制台输入一个整数,如果不是整数重新输入具体代码如下,结果陷入了死循环!请问该如何修改?pack

求助:我想从控制台输入一个整数,如果不是整数重新输入
具体代码如下,结果陷入了死循环!请问该如何修改?
package com.wrx.six;
import java.util.*;
public class Test {

/**
* 输入限制为int数字,不是int数字重新输入
*/
public static void main(String[] args) {
Scanner input=new Scanner(System.in);
while (true){
try{
System.out.println("请输入一个整数:");
int num=input.nextInt();
break;
}
catch(InputMismatchException e){
System.out.println("必须输入整数!请重新输入:");
}
}
}
}

[解决办法]

Java code
import java.io.IOException;import java.util.InputMismatchException;import java.util.Scanner;public class Test {    /**     * 输入限制为int数字,不是int数字重新输入     * @throws IOException      */    public static void main(String[] args) throws IOException {        Scanner input = new Scanner(System.in);        int num = 0;                while (num == 0) {            try {                System.out.println("请输入一个整数:");                num = input.nextInt();            } catch (InputMismatchException e) {                System.out.println("必须输入整数!请重新输入:");                input.nextLine(); // 吃掉回车            }        }            }} 

热点排行