缺少方法中的return语句

Anj*_*Tom -1 java return

试图解决这个问题.我创建了一个方法,用于检查用户是否使用catch块输入了整数.

该方法显然是要求返回语句,但无论我把它放在哪里它都不起作用.有人可以提供任何建议吗?

public class Week5 {

    public static void main(String[] args) {
        Scanner myKeyboard = new Scanner(System.in);
        inputInt();
        inputDouble();
    }

    public static int inputInt(){
        Scanner myKeyboard = new Scanner(System.in);

        System.out.println("Enter number:");

        int num;

        boolean carryOn = true;

        while (carryOn == true) { 
            {
                try { 
                    num = myKeyboard.nextInt();

                    carryOn = false;
                }
                catch (Exception e) {System.out.println ("Integers only, try again" ); 

                myKeyboard.next();
                return num;    
            }           
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

Dan*_*lan 5

carryOn== false时,它将转到方法的底部,那里没有return语句.您需要在底部有一个return语句.

以下是对错误的解释:如果函数说它返回某些东西(int在这种情况下是一个),这意味着它可以采取的每个路径必须返回一个int.您错过了其中一个编译时错误的路径.