我希望能够使用一组可以代表数学运算符的变量。我正在尝试创建一个计算器作为学习练习。我认为每次按下按钮都会进行计算并不好,那么如何在不包含if语句中的计算的情况下更改问题中的运算符?
string plus = +;
string equals = =;
public void button_clicked(....)
{
.....
7 equals 4 plus 3;
答案 0 :(得分:1)
第一个问题。为什么计算按下按钮的时间不太好,更简单。
如果您真的想要,可以使用命令模式并存储在用户单击等于时执行的命令列表。
E.g。
public interface Operation {
public double execute();
}
public class Add implements Operation {
private double num1;
private double num2;
public Add(double num1, double num2) {
this.num1 = num1;
this.num2 = num2;
}
public double execute() {
return num1 + num2;
}
}
然后每次按下按钮时,您都会创建一个新操作并存储在列表中。按下equals时,执行每个操作,将结果从一个传递给下一个。
您显然需要更多操作。