Цикл Java while не прерывается после оператора "break" - PullRequest
0 голосов
/ 11 июля 2019
import java.util.Scanner;

public class LoopsEndingRemembering {
    public static void main(String[] args) {
        // program in this project exercises 36.1-36.5
        // actually this is just one program that is split in many parts

        Scanner reader = new Scanner(System.in);

       System.out.println("Type numbers: ");
       int input = Integer.parseInt(reader.nextLine());

       while(true){

           if(input == -1){
               break;
           }

         }



       System.out.println("Thank you and see you later!");


    }
}

Пользователь должен иметь возможность вводить несколько цифр, пока не будет достигнут -1. Как только он достигнут, он должен разорвать цикл и напечатать последнюю строку.

Ответы [ 2 ]

4 голосов
/ 11 июля 2019

нужно поставить

 System.out.println("Type numbers: ");
 int input = Integer.parseInt(reader.nextLine());

в ваш цикл, иначе он никогда не получит новый пользовательский ввод

0 голосов
/ 11 июля 2019

Вам нужен сканер вызовов внутри цикла

import java.util.Scanner;
public class LoopsEndingRemembering {

public static void main(String[] args) {

 while(true){
           Scanner reader = new Scanner(System.in);
           System.out.println("Type numbers: ");
           int input = Integer.parseInt(reader.nextLine());
               if(input == -1){
                   break;
               }
             }
           System.out.println("Thank you and see you later!");
        }
    }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...