小编Maj*_*tic的帖子

为什么我的程序在条件为假时进入while循环?

当我输入字符串运算符时,无论是加法(+),减法( - ),乘法(*),除法(/)还是模块(%),即使输入有效输入,它仍会进入while循环.我不知道问题是什么,因为while循环工作正常,我必须为变量num2输入一个int值.

import java.util.Scanner;

public class PolishNotationCalc {

    public static void main(String[] args) {

        Scanner input = new Scanner(System.in);
        int num1;
        int num2;
        String operator;

        System.out.println("Polish notation calculator");

        System.out.print("Please enter an operation(+, -, *, /, %) ");
        operator = input.nextLine();

        while (!operator.equals("+") || !operator.equals("-") || !operator.equals("*") || !operator.equals("/") || !operator.equals("%")) {
            System.out.println("Please enter a valid operation ");
            operator = input.nextLine();
            if (operator.equals("+") || operator.equals("-") || operator.equals("*") || operator.equals("/") || operator.equals("%"))
                break;
        }

        System.out.print("");
        System.out.print("Please enter the first number "); …
Run Code Online (Sandbox Code Playgroud)

java if-statement while-loop polish-notation

1
推荐指数
1
解决办法
957
查看次数

标签 统计

if-statement ×1

java ×1

polish-notation ×1

while-loop ×1