Exception handling, catch causes while loop to stop

后端 未结 3 1689
醉话见心
醉话见心 2020-12-21 06:52

I have a file that I need to read, print out the integers, catch exception and continue with the next integer to display, and so on until there are no more integers.

3条回答
  •  醉酒成梦
    2020-12-21 07:35

    When exception occurs, control get to the matching catch block and then subsequent line after that catch block. In your case matching catch is outside the while loop and hence while loop is stopped. Move the corresponding catch block in while loop. In your code reader.nextInt(); is the potential line which may cause the InputMismatchException.

            try {
                int num = reader.nextInt();
                System.out.println("Number read: " +num);
            } catch (InputMismatchException e) {
                System.out.println("Input error ");
            }
    

提交回复
热议问题