Прервать с помощью строки «abort» цикла while в этой простой калькуляторной программе, созданной с помощью класса сканера и Java - PullRequest
0 голосов
/ 01 декабря 2018

Помогите мне прервать цикл while с помощью sc.equals("abort") input / n в любой момент процесса.

  public class Calculator {
        public static void main(String[] args) {
            double wert1, wert2, ergebnis;
            Scanner sc = new Scanner(System.in);
            boolean start = true;
            while(start) {
                try {
                    System.out.println("Pleaser Enter First Number");
                    wert1 = sc.nextDouble();

                    System.out.println("please Enter a Operator +,-,/,*");
                    String operator = sc.next();

                    System.out.println("please Enter second Value");
                    wert2 = sc.nextDouble();

                    if (operator.equals("+")) {
                        ergebnis = wert1 + wert2;
                        System.out.println("Das Ergebnis ist " + ergebnis);
                    }
                    if (operator.equals("-")) {
                        ergebnis = wert1 - wert2;
                        System.out.println("Das Ergebnis ist " + ergebnis);
                    }
                    if (operator.equals("*")) {
                        ergebnis = wert1 * wert2;
                        System.out.println("Das Ergebnis ist " + ergebnis);
                    }
                    if (operator.equals("/")) {
                        ergebnis = wert1 / wert2;
                        System.out.println("Das Ergebnis ist " + ergebnis);
                    }
                    if (sc.equals("abort")) {//why doesnt this work?
                        start = false;
                        break;
                    }
                } catch (InputMismatchException e) {

                    if (sc.equals("abort")) {//why doesnt this work?
                        start = false;
                        break;
                    }
                    else{sc.nextLine();}
                }
            }
        }
    }

Прервать строку «abort» цикла while в этой простой программе калькуляторасделано с классом сканера и Java.

1 Ответ

0 голосов
/ 01 декабря 2018

sc - это объект Scanner, он не представляет непосредственно то, что вы вводите.Вы можете получить то, что вы печатаете, с помощью sc.next().Вы уже определили String operator = sc.next(), поэтому просто используйте if (operator.equals("abort")) вместо if (sc.equals("abort")).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...