在java中怎么使用if选择判断从键盘接收的数是不是int类型的

2024年11月18日 21:34
有3个网友回答
网友(1):

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("不是数字");
}

网友(2):

可以 把接收到的字符 放到intger的类型中 如果不是数字会抛出异常
比如
String number="123";
new Intger(number);//如果number不为数字会抛出异常

网友(3):

大概知道的简单的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();//强转失败,继续输入
}
}
}