-2

我希望能够使用一组可以代表数学运算符的变量。我正在尝试创建一个计算器作为学习练习。我认为每次按下按钮时都进行计算并不好,那么如何在不包含 if 语句中的计算的情况下更改问题中的运算符?

例子

string plus = +;
string equals = =;
public void button_clicked(....)
{
    .....
    7 equals 4 plus 3;
4

1 回答 1

1

第一个问题。为什么按下按钮时计算不好,简单得多。

如果您真的想要,您可以使用命令模式并存储在用户单击等于时要执行的命令列表。

例如

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;
    }

}

然后每次按下按钮时,您都会创建一个新操作并存储在列表中。当按下等于时,您执行每个操作,将结果从一个传递到下一个。

你显然需要更多的操作。

于 2013-02-21T17:05:33.550 回答