java RPN计算器

标签 java rpn

我想在我的一个项目中包含一个简单的 RPN 类型计算器功能。

基本上我需要一个可以转换的方法,例如:

“30/((1 + 4) * 3)”变为“2”

有谁知道任何可以做到这一点的预先编写的库吗?

谢谢。

最佳答案

您应该实现Shunting Yard Algorithm

另请参阅:Reverse Polish notation

您可以使用Shunting Yard (Jep API)

如果你不需要用Java实现它,我建议你用Python编写,因为它有内置方法

print eval("30 / ((1 + 4) * 3)")

ideone demo

关于java RPN计算器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4646572/

相关文章:

java - Jenkins Tomcat 部署错误

java - 从 Web 服务抛出异常时方法调用失败

java - Ant Sonar 将多个报告合并为一个

java - 如何在条件逆波兰表示法公式中使用 AND/OR?

java - Java 最多只拆分 5 个逗号

java - 将 Antlr 语法树转换成有用的对象

function - 创建 RPN 计算器

python - 获取 RPN 树大小

java - Java 中 RPN 示例中使用堆栈的 NullPointerException

functional-programming - 如何在 Scheme 中仅使用 1 个列表来构建 2 个列表?