我正在制作一个与 Windows 计算器相同的计算器。我被困在历史功能上。哪个是实现 Windows Calculator 中看到的历史记录功能的最佳 UI 控件?我还想要历史上的 onclick 事件。
问问题
1832 次
3 回答
1
我不确定你如何表示计算,但你可以有一个像这样的简单类:
enum Operator {PLUS,MINUS,DIV,MULT};
class Calculation {
float operand1,operand2;
Operator operator;
public Calculation(float op1,float op2,Operator operator){
this.operand1=op1;
this.operand1=op2;
this.operator=operator;
}
}
然后当计算完成后,创建一个这种类型的对象并将其添加到一个 ArrayList 中:
List<Calculation> history = new ArrayList<Calculation>();// history
history.add(new Calculation(5,5,Operator.PLUS));// add a new `Calculation` to our list
然后history.get(some_integer)
根据您的 UI 使用 访问列表。
于 2012-05-02T07:09:45.927 回答
0
您需要在此处使用索引存储所有操作和结果。每次执行操作时增加索引。要检索过去的操作,操作索引即可获取值。您可以使用 Collection API 来存储操作。
于 2012-05-02T06:56:46.763 回答
0
您可以只使用包含许多先前输入的计算的列表吗?如果您事先知道最大可能的历史记录大小,则可以坚持使用普通数组,但 List 将为您提供更大的灵活性。
于 2012-05-02T06:50:10.870 回答