JAVA新人求指教 如果输入的是字母就会报错 怎么样能让他显示输入错误 谢谢

package homework2;

import java.util.Scanner;

public class homework2 {
public static void main(String arge[]){
Scanner scanner = new Scanner(System.in);

System.out.println("请输入会员积分");
int um=scanner.nextInt();
if(0<=um&&um<2000){
System.out.println("打9折");
}
if(2000<=um && um<4000){
System.out.println("打8折");
}else if(4000<=um&&um<8000){
System.out.println("打7折");
}else if(um>8000){
System.out.println("打6折");

}else{
System.out.println("对不起您的积分不够");
}
}

}

第1个回答  推荐于2016-09-05
对于可能出现异常的地方,你可以用try catch来捕获异常,代码如下:
还有类名的第一个字母最好大写。。。

package homework2;

import java.util.Scanner;
public class homework2 {
public static void main(String arge[]){
Scanner scanner = new Scanner(System.in);

System.out.println("请输入会员积分");
try {
int um=scanner.nextInt();
if(0<=um&&um<2000){
System.out.println("打9折");
}
if(2000<=um && um<4000){
System.out.println("打8折");
}else if(4000<=um&&um<8000){
System.out.println("打7折");
}else if(um>8000){
System.out.println("打6折");

}else{
System.out.println("对不起您的积分不够");
}
} catch (Exception e) {
System.out.println("输入有误,只能是数字!");
e.printStackTrace();
}

}

}追问

  好像没用还是报错
请输入会员积分
sdfsdf
输入有误,只能是数字!

本回答被提问者采纳