Postfix表达式评估

时间:2014-05-10 15:19:22

标签: java stack postfix-notation

作为Java的新手..如何评估包含负数的多位数字的后缀表达式(即。" 12 -12 +")

我的代码片段提供" java.lang.NullPointerException" !

我用了#34; StringTokenizer" ,但它没有效率

任何人都可以帮助改进代码吗?

提前致谢

1 个答案:

答案 0 :(得分:0)

算法是:

  1. 读取最后一个元素到第一个元素的字符串,并将每个元素放在一个字符串堆栈中(堆栈的每个元素都是一个char运算符或一个可转换为数字的单词)。
  2. pop 3元素将前两个元素转换为数字,具体取决于运算符计算结果
  3. 将结果推送到堆栈
  4. 重复2)和3)直到堆栈为空。