java - 我的程序中的 InputMismatchException 处理? - JAVA

标签 java exception try-catch inputmismatchexception

抱歉,我对 Java 还很陌生,我尝试通过在线帮助来解决这个问题。我正在尝试尝试/捕获来处理“输入学生的作业成绩”之后的InputMismatchException(如果他们输入字母而不是数字)。到目前为止还没有成功。为了完成这个任务,代码应该是什么样的?

package exceptionHandling;
import java.util.Scanner;
import java.util.InputMismatchException;

public class ExceptionHandling {

public static void main(String[] args) {

    Scanner scan = new Scanner(System.in);

    double total=0;     
    System.out.println("Enter the number of homework assignments:");
    int homeworkGrades = scan.nextInt();
    double hw[]=new double[homeworkGrades];

    System.out.println("Enter the homework grades for the student:");
    for (int hw2=0;hw2<hw.length;hw2++){
        hw[hw2]=scan.nextDouble();
    }
        for(int i=0;i<hw.length;i++){
            total=total+hw[i];
        }   

    scan.close();
    double average=total/homeworkGrades;
    System.out.println("The average homework grade is "+average);
    if (average < 101 && average >= 90) {
        System.out.println("A");
    }
        else if (average < 90 && average >= 80) {
            System.out.println("B");
        }
            else if (average < 80 && average >= 70) {
                System.out.println("C");
            }
            else if (average < 70 && average >= 60) {
                System.out.println("D");
            }
            else if (average < 60) {
                System.out.println("F");
        }
}

}

即使当我 try catch “输入学生的作业成绩”的代码时,我仍然会遇到InputMismatchError。我尝试将 try 和 catch 插入到不同的位置并在其中使用不同的代码,但没有成功。

编辑:不,重复扫描仪不是我的问题。我无法成功处理 InputMismatchException,并且我已经尝试这样做了几个小时。请帮忙!

最佳答案

如果您不想处理异常错误,可以使用 .hasNextDouble()、.hasNextInt() 等来检查是否存在另一个 double。

关于java - 我的程序中的 InputMismatchException 处理? - JAVA,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57650131/

相关文章:

javascript - 在JS中,为什么不记录catch(err)中的参数显示完整的响应对象?

python - 在 systemctl 停止服务时正确退出 python 脚本

java - 每个路径一个 Servlet 还是在一个 Servlet 中处理多个路径?

java - 是否有任何选项可以为 Selenium Webdriver 中的任何元素提供多个属性?

c# - 是否可以拦截第三方应用程序的 WIN32 异常?

debugging - 如何找出 Haskell 中发生异常的行号?

python - 热切地评估 Python 中的 bool 表达式

java - 如何使用@Async 注释在方法中获取 hibernate session

java - 连接到本地主机 MySQL 数据库的问题

javascript - 如何在没有错误的情况下访问catch javascript