我想捕获 InputMismatchException 但它显示编译时错误

I want to catch InputMismatchException but it shows compile time error

编译时出现以下错误:

filimon.java:12: error: cannot find symbol
                }catch(InputMismatchException ime){
                       ^
  symbol:   class InputMismatchException
  location: class filimon
1 error

我的源代码是:

class filimon{
    public static void main(String[] args) {
        Scanner s=new Scanner(System.in);
        try{
            System.out.println("enter 2 integer values");
            int a=s.nextInt();
            int b=s.nextInt();
            System.out.println("value of a: "+a);
            System.out.println("value of b: "+b);
        }catch(InputMismatchException ime){
            System.err.println("please enter only number value");
        }
        catch(Exception e){
            System.err.println(e);
        }
    }//main
}//filimon

问题是什么?请帮助我。

添加导入java.util.InputMismatchException;

Java 找不到 InputMismatchException 因为它不是导入的。

InputMismatchException 位于 java.util.

在文件的顶部,写

import java.util.InputMismatchException;

只导入异常,或者

import java.util.*;

导入 java.util 中的所有内容。

作为旁注,

catch(Exception e)

不是个好主意。最好在其自己的 catch 块中列出您想要捕获的每个异常,或者像这样:

catch(InputMismatchException|NoSuchElementException e){