java - 如何在 Java 中将长计算字符串分离为可用计算

标签 java math calculator

<分区>

Possible Duplicate:
Evaluating a math expression given in string form

抱歉标题太长(也有点奇怪 :)),我想不出更好的标题,但就这样吧。

我一直在使用 JFrame 用 Ja​​va 制作计算器,它像真正的计算器一样具有 JButtons。当您单击按钮时,计算会出现在 TextArea 中。当按下“等于”按钮时,整个计算从 TextArea 中获取并计算。我遇到的问题是如何实际计算答案。这听起来可能有点奇怪,但假设我得到的计算是 36+45/22。我如何将数字写入变量,然后告诉计算机要对变量执行哪些操作以及以什么顺序执行。这可以用无限数量的变量来完成吗?有什么办法吗?感谢您的帮助。

最佳答案

你可以使用ScriptEngine:

ScriptEngine engine = new ScriptEngineManager().getEngineByName("JavaScript");
System.out.println("result = " + engine.eval("36+45/22"));

另一个选项是 Jep .

关于java - 如何在 Java 中将长计算字符串分离为可用计算,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13222399/

相关文章:

java - 跨线程通信java

java - 合并来自不同声明的多个@TestExecutionListeners?

按顺时针顺序对 3D 点列表进行排序

javascript - 为什么我的变量不相加?

Java 编译错误 : Parameter x is exceeding the limit of 255 words

java - 高效的数据结构与算法——自然序列

math - 将一堆数字属性转换为一个分数

c - 如何在avr中存储十进制格式的数字

algorithm - 如何计算Elo总评分?

java - Eclipse 在同一目录中的另一个文件中找不到 xsl 模板