java - java中的简单计算器

标签 java calculator

我正在尝试在java中创建简单的计算器,用户输入第一个数字和第二个数字,然后使用while循环按照用户的方式计算 但是当我写例如 a 而不是两个数字之和时,它打破了循环! 为什么?

package com.myproject.CalcEngine2;
import java.util.Scanner; // import the Scanner class

public class Main {

    public static void main(String[] args) {
        Scanner myObj = new Scanner(System.in);
        System.out.println("Enter fisr number");
        double val1 = myObj.nextDouble();
        System.out.println("Enter fisr number");
        double val2 = myObj.nextDouble();
        double result = 0.0d;
        String addition = "a";
        System.out.println("Enter what you want to do");
        String opCode = myObj.next();
        while(opCode.equals("E")) {
            if (opCode.equals(addition))
                result = val1 + val2;
            else if (opCode.equals("s"))
                result = val1 - val2;
            else if (opCode.equals("d"))
                result = val1 / val2;
            else if (opCode.equals("m"))
                result = val1 * val2;
            System.out.println(result);
            System.out.println("Enter what you want to do"+"E for exit , a for addition , s for subtraction , d for Division , m for multiplication ");
            opCode = myObj.next();
        }
    }
}

程序显示我写的每个字符都是假的,但我不明白为什么!?

最佳答案

也许是因为 while 循环除了“E”之外都会终止?

while(opCode.equals("E")) {

仅在“E”时运行,但我认为你的意思是

while(!opCode.equals("E")) {

关于java - java中的简单计算器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55155374/

相关文章:

java - DateUtils.parseDate 异常

objective-c - 在 Xcode 中收到 "Control reaches end of non-void function"错误消息

javascript - 无法同时运行两个函数

javascript - 创建计算器(JS)

java - 使用序列化深度克隆后 hibernate 延迟加载异常

java - 单选按钮未正确对齐

java - 我怎样才能获得多线程并行计算器(阶乘和)

java - 使用数组和循环的 BMI 计算器,包含姓名、体重、高度、BMI 和文本

java - Android 到虚幻引擎接口(interface) (C++)

java - Java 最终字段值的 ‘up to date’ 保证是否扩展到间接引用?