【发布时间】:2012-01-17 01:14:08
【问题描述】:
我一直在用 java 开发表达式评估器,出于沮丧,我也来这里询问它。到目前为止,我已经重写了至少 15 次,但每次都无济于事。
基本上,我需要在前缀、中缀或后缀中取一个字符串并将其计算为整数。该表达式可以使用 java 中包含的任何算术运算符。
我遇到的问题: - 当我尝试解析为表达式树或将它们全部解析为后缀时,我遇到了单项式运算符的问题。 - 我无法将多位数字识别为一个数字,随后它会破坏整个树或切换数字。 - 我无法让程序找出正确放置括号的位置,也无法让程序使用堆栈识别括号的开头和结尾。
所以基本上程序需要这样做:
对于任意数 A B C D E F
在前缀后缀和中缀中求值:
A-- + ++B - --C * D++ / E % F
对于任意位 A B C D E F G 和数字 n
在前缀、后缀和中缀中求值: 甲&乙| C ^ ~D
n >> A
n
我的教科书没有多大帮助,我订购的书籍也没有多大帮助,我真的不明白如何做到这一点,请帮助,即使只是解释如何做到这一点对我来说已经足够了。感谢您的帮助:D
【问题讨论】:
标签: java expression evaluation