Scanner scan = new Scanner(System.in);
// 第一种方式,直接用nextInt方法,这样就限制了用户在控制台只能输入数字了
int i = scan.nextInt();
// 第二种,给用户输入字符串的操作
String s = scan.next();
while (true) {
try {
i = Integer.parseInt(s);
break;// 假如强转成功,则终止循环
} catch (Exception e) {
System.out.println("输入的" + s + "不是数字,重新输入");
s = scan.next();// 强转失败,继续输入
}
}
// 第三种,直接比较,不过只限于0-9
System.out.println("请输入一个字符!");
String str = scan.next();
if (str.matches("[0-9]")) {
System.out.println("是数字");
} else {
System.out.println("不是数字");
}
可以 把接收到的字符 放到intger的类型中 如果不是数字会抛出异常
比如
String number="123";
new Intger(number);//如果number不为数字会抛出异常
大概知道的简单的2种方式
public static void test(){
Scanner scn = new Scanner(System.in);
int i = scn.nextInt();// 第一种方式,直接用nextInt方法,这样就限制了用户在控制台只能输入数字了
// 第二种,给用户输入字符串的操作
String s = scn.next();
while (true) {
try {
i = Integer.parseInt(s);
break;// 假如强转成功,则终止循环
} catch (Exception e) {
s = scn.next();//强转失败,继续输入
}
}
}