You need to read the bad input and clear the Scanner's input buffer so the next call to nextInt() will have fresh data. Also you could use one of the has... methods to test if the next input is the...