case 6:
case 7:
case 8:
JOptionPane.showMessageDialog(null,"That is totally unbelieveable.");
break;
Это сделает работу.
Однако я бы изменить его на:
case 4: JOptionPane.showMessageDialog(null,"Four dogs is too many."); break;
case 5: JOptionPane.showMessageDialog(null,"Five dogs means you're a crazy person."); break;
default: JOptionPane.showMessageDialog(null,"That is totally unbelieveable.");break;
Это устранит Output сообщение Invalid, но будет работать для каждого числа> 5, но я думаю, что это приемлемо, так как значение собак выходит из звонка Integer.parseInt()
. Если содержимое недопустимо, исключение будет исключено, и сообщение Invalid Input может быть показано внутри обработчика исключений и, как и мудрый, исключение может быть выбрано, если собаки отрицательны.
Это имеет то преимущество, что будет работать для каждого количества собак. Если вам нужно управлять другим сообщением об ошибке, достаточно будет добавить конкретную ветвь case
.
int dogs;
try {
dogs = Integer.parseInt(JOptionPane.showInputDialog("How many dogs do you have?"));
if (dogs < 0) {
throw new Exception("Negative dog is impossible!");
}
switch (dogs)
{
...
...
...
case 4: JOptionPane.showMessageDialog(null,"Four dogs is too many."); break;
case 5: JOptionPane.showMessageDialog(null,"Five dogs means you're a crazy person."); break;
default: JOptionPane.showMessageDialog(null,"That is totally unbelieveable.");break;
}
} catch (Exception e) {
JOptionPane.showMessageDialog(null,"Invalid input.");
}
Добавить случаях для те, которые текут в 6 и ломаются. –
Как насчет 1, 2, 3 собак? И 0? –
Посмотрите «переход через провал» – blgt