我有一个程序,根据键盘的用户输入添加两个数字。这是:
package com.sigma.java7;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
public class Addition {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
System.out.println("Enter A :");
String numA = br.readLine();
int a = Integer.parseInt(numA);
System.out.println("Enter B :");
String numB = br.readLine();
int b = Integer.parseInt(numB);
System.out.println("The Result is : "+(a+b));
br.close();
}
}
但是,我想知道如何处理如果用户输入错误数据,它将显示错误消息“输入错误,输入正确的值”,然后再次提示输入正确的信息。如果用户正确输入,程序会显示正确的结果并退出。
我是否使用异常处理?
答案 0 :(得分:2)
您可以使用try catch来执行此操作。例如,您的代码可能如下所示:
do {
try {
System.out.println("Enter A :");
String numA = br.readLine();
int a = Integer.parseInt(numA);
break;
} catch (Exception e /*InputMismatchException e*/) {
System.out.println("Please fill in a number between –2,147,483,648 and 2,147,483,647");
//System.out.println(e.printStackTrace()); //Use this to print the error
}
} while (true);
当输入无法解析为整数时,这将抛出异常。