Вопрос:
Я ищу решение, которое разрешает только ответ 1 или 2. Как можно запросить ввод снова, если вместо этого введет другой ответ? Благодарю!
System.out.println(«Are you single or married? n 1 — Single n 2 — Married»); status = in.nextInt(); //allow input for status Лучший ответ:do{ System.out.println(«Are you single or married? n 1 — Single n 2 — Married»); status = in.nextInt(); //allow input for status }while((status!=1)&&(status!=2));
Это будет продолжать печатать тот же вопрос, пока ответ не будет равен 1 или 2. Возможно, вы захотите добавить System.out.print(«f»); чтобы очистить экран перед тем, как задать вопрос в эстетических целях.
Ответ №1
Это простой способ сделать это, но я бы рекомендовал сделать некоторые исследования самостоятельно, так как я уверен, что вы могли бы найти ответ, который больше по душе:
boolean right=false; do{ System.out.println(«Are you single or married? n 1 — Single n 2 — Married»); status = in.nextInt(); if(status.equals(«1») || status.equals(«2»);{right=true;} } while(status==false);
Я бы рекомендовал исследовать циклы while и if-statements:
Надеюсь это поможет.
Ответ №2
Вы можете попробовать что-то вроде ниже.
Предупреждение: я не тестировал этот код
while(true) { System.out.println(«Are you single or married? n 1 — Single n 2 — Married»); status = in.nextInt(); // allow input for status if(status==1 || status==2) break; }