Java中的中缀前缀数学表达式转换器
我试图编写一个方法,将中缀转换为前缀数学表达式,并使用堆栈来实现这一点。但我在某些情况下会出错,我不知道问题出在哪里 代码: 它很好用。 但如果我有Java中的中缀前缀数学表达式转换器,java,math,expression,prefix,Java,Math,Expression,Prefix,我试图编写一个方法,将中缀转换为前缀数学表达式,并使用堆栈来实现这一点。但我在某些情况下会出错,我不知道问题出在哪里 代码: 它很好用。 但如果我有 3 * 9 + ( 9 + y ) / 4 - x 12 / c + c * p ^ ( 8 + 9 ) 它应该给我: 12 c/c p 8 9+^*+ 但我得到: (+p(*^(+89))) 问题是什么。请帮帮我。 谢谢你只要看一下你的代码,我可能会说这一行 String operand = "(" + operator + " " + le
3 * 9 + ( 9 + y ) / 4 - x
12 / c + c * p ^ ( 8 + 9 )
它应该给我:
12 c/c p 8 9+^*+
但我得到:
(+p(*^(+89)))
问题是什么。请帮帮我。
谢谢你只要看一下你的代码,我可能会说这一行
String operand = "(" + operator + " " + leftOperand + " "+ rightOperand + ")";
是您问题的根源,并且您没有在
操作组合
函数中考虑运算符^
。只要看一下您的代码,我可能会说这行
String operand = "(" + operator + " " + leftOperand + " "+ rightOperand + ")";
是问题的根源,也是您没有在操作组合
功能中考虑运算符^