我正在尝试实现基于文本的计算器应用程序(不使用外部库)。
我想知道它是否可以用解释器模式实现?
https://www.baeldung.com/java-interpreter-pattern
但不确定如何在表达式之间传递这些状态。
**(它也接受变量)。 **
输入是控制台的一系列赋值表达式。 (语法是Java数字表达式和运算符的子集。)
示例:输入:以下是该程序的一系列有效输入:
i = 0
j = ++i
x = i++ + 5
y = 5 + 3 * 10
i += y
输出:在评估系列结束时,将打印出每个变量的值。
输出:
=======
(i = 37,j = 1,x = 6,y = 35)
我不确定如何开始实施它。
我认为也许每个操作都有策略模式,但是我不确定它的效率如何。
你能告诉我吗?也许有一段代码?