dhgdl 2022-09-02 22:45 采纳率: 100%
浏览 14
已结题

怎么添加一个判定算术优先级的条件

package CalculatorImplementation;

public class Calculator {
private String brand;
private String[] pressButton;
private int pressButtonIndex;

public Calculator(){
    pressButton = new String[100];
    pressButtonIndex = 0;
}
public void setBrand(String brand){
    this.brand = brand;
}
public String getBrand(){
    return brand;
}
public void pressOne(){
    pressButton[pressButtonIndex] = "1";
    pressButtonIndex++;
    System.out.println("按了数字1");
}
public void pressTwo(){
    pressButton[pressButtonIndex] = "2";
    pressButtonIndex++;
    System.out.println("按了数字2");
}
public void pressThree(){
    pressButton[pressButtonIndex] = "3";
    pressButtonIndex++;
    System.out.println("按了数字3");
}
public void pressFour(){
    pressButton[pressButtonIndex] = "4";
    pressButtonIndex++;
    System.out.println("按了数字4");
}
public void pressFive(){
    pressButton[pressButtonIndex] = "5";
    pressButtonIndex++;
    System.out.println("按了数字5");
}public void pressSix(){
    pressButton[pressButtonIndex] = "6";
    pressButtonIndex++;
    System.out.println("按了数字6");
}public void pressSeven(){
    pressButton[pressButtonIndex] = "7";
    pressButtonIndex++;
    System.out.println("按了数字7");
}public void pressEight(){
    pressButton[pressButtonIndex] = "8";
    pressButtonIndex++;
    System.out.println("按了数字8");
}public void pressNine(){
    pressButton[pressButtonIndex] = "9";
    pressButtonIndex++;
    System.out.println("按了数字9");
}
public void pressAdd(){
    pressButton[pressButtonIndex] = "+";
    pressButtonIndex++;
    System.out.println("按了+");
}
public void pressSubtract(){
    pressButton[pressButtonIndex] = "-";
    pressButtonIndex++;
    System.out.println("按了-");
}
public void pressMultiply(){
    pressButton[pressButtonIndex] = "*";
    pressButtonIndex++;
    System.out.println("按了*");
}
public void pressDivide(){
    pressButton[pressButtonIndex] = "/";
    pressButtonIndex++;
    System.out.println("按了/");
}
public int pressEquals(){
    int result = 0;
    String flag = null;
    for(int i = 0;i < pressButtonIndex;i++){
        if(!pressButton[i].equals("+") && !pressButton[i].equals("-") && !pressButton[i].equals("*") && !pressButton[i].equals("/")){
            if(result == 0){
                result = Integer.parseInt(pressButton[i]);
            }else{
                if(flag.equals("+")){
                     result = result + Integer.parseInt(pressButton[i]);
                }else if(flag.equals("-")){
                     result = result - Integer.parseInt(pressButton[i]);
                }else if(flag.equals("*")){
                     result = result * Integer.parseInt(pressButton[i]);
                }else if(flag.equals("/")){
                     result = result / Integer.parseInt(pressButton[i]);
                }
            }
        }else{
            if(pressButton[i].equals("+")) {
                flag = "+";
            }else if(pressButton[i].equals("-")){
                flag = "-";
            }else if(pressButton[i].equals("*")){
                flag = "*";
            }else if(pressButton[i].equals("/")){
                flag = "/";
            }
        }
    }
    return result;
}

}

  • 写回答

0条回答 默认 最新

    报告相同问题?

    问题事件

    • 系统已结题 9月10日
    • 创建了问题 9月2日

    悬赏问题

    • ¥30 QT调用百度智能云千帆模型无法取得返回文本
    • ¥50 CCD工业视觉相机检测出现光边
    • ¥20 C++初高中竞赛题,devc++可以通过的
    • ¥60 二次元手游日常任务自动化代肝(相关搜索:自动化)
    • ¥15 mysql将查询的结果作为动态列名怎么实现
    • ¥50 python自动地图截图脚本
    • ¥15 fastreport怎么判断当前页数
    • ¥15 Kylin-Desktop-V10-GFB-Release-JICAI_02- 2207-Build14-ARM64.iso有没有这个版本的系统啊
    • ¥15 能不能通过蓝牙将传感器数据传送到手机上
    • ¥20 100元python和数据科学实验项目