7-1 jmu-Java-06异常-02-使用异常机制处理异常输入 分数 20
时间: 2023-08-08 11:05:55 浏览: 82
好的,根据您的要求,我可以为您提供以下代码示例:
```java
import java.util.InputMismatchException;
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
try {
System.out.print("请输入一个整数:");
int n = scanner.nextInt();
System.out.println("你输入的整数是:" + n);
} catch (InputMismatchException e) {
System.out.println("你输入的不是整数!");
}
scanner.nextLine(); // 清空换行符
try {
System.out.print("请输入一个浮点数:");
double d = scanner.nextDouble();
System.out.println("你输入的浮点数是:" + d);
} catch (InputMismatchException e) {
System.out.println("你输入的不是浮点数!");
}
scanner.nextLine(); // 清空换行符
try {
System.out.print("请输入一个字符串:");
String str = scanner.nextLine();
int n = Integer.parseInt(str);
System.out.println("你输入的字符串转换成的整数是:" + n);
} catch (NumberFormatException e) {
System.out.println("你输入的不是整数字符串!");
}
}
}
```
在上面的代码中,我们使用了`Scanner`类来获取用户输入。我们分别尝试获取一个整数、一个浮点数和一个字符串,并使用异常机制来处理输入错误的情况。
在获取整数和浮点数的时候,我们使用了`nextInt()`和`nextDouble()`方法来获取用户输入。如果用户输入的不是整数或浮点数,就会抛出`InputMismatchException`异常,我们在`catch`语句块中处理这个异常,并输出错误信息。
在获取字符串的时候,我们先使用`nextLine()`方法获取一行用户输入,然后使用`Integer.parseInt()`方法将字符串转换为整数。如果用户输入的不是整数字符串,就会抛出`NumberFormatException`异常,我们同样在`catch`语句块中处理这个异常,并输出错误信息。