0

我正在开发一个java 程序,我希望它完成的任务之一是将用户给定的输入转换为程序将解决的方程。例如“(10 + 5 / 3) 2 - 3 (10 * (8 ^ 4))”。它必须能够求解中等教育水平方程,因此需要指数、指数符号,甚至可能需要变量求解。

我环顾了 stackoverflow,发现了两件事,第三方 API 和 ScriptEngine。

我对这两个都有问题,因为我不想使用任何第三方 API 和脚本引擎的 eval() 函数,至少就我所阅读和理解的而言,它的功能有限。

有没有其他本地 API 可以做这样的事情?我错过了什么技巧?

所以,回顾一下,我想要一些 Java 原生的东西,而不是脚本引擎,它可以解决中等教育水平的方程式和表达式。

4

2 回答 2

2

Java 有内置的 ( javax.script.*) JavaScript 引擎:

它允许您解决这样的方程。

于 2013-09-24T03:15:14.887 回答
2

..一个例子是“(10 + 5 / 3) 2 - 3 (10 * (8 ^ 4))”。..

尝试访问此ScriptEngine演示。..

在此处输入图像描述

我查看了 stackoverflow,发现了两件事,第三方 API 和ScriptEngine.

我对这两个都有问题,因为我不想使用任何第三方 API 和脚本引擎的 eval() 函数,至少就我所阅读和理解的而言,它的功能有限

这种理解是不正确的。


也可以看看

使用ScriptEngine.

  1. EvaluateString.java.

  1. SwingCalculator.java(因为它太漂亮了)

计算输入=计算输出

于 2013-09-24T05:57:38.537 回答