我是 Java 的新手,所以我的问题看起来微不足道,但我在我的书中找不到任何答案。
我想发起一个与用户的对话,他将在其中输入一个算术表达式(例如(2*x+y))然后打印出该表达式的结果(对于给定的 x 和 y 值)
String EXPRESION = null;
EXPRESION = JOptionPane.showInputDialog("Please enter expresion for dy/dx");
double x = 1.4;
double y = 5;
double output = HERE IS THE PROBLEM
JOptionPane.showMessageDialog("The value is" +output);
我无法转换用户插入的字符串,因此它将用作 x 和 y 的算术表达式,从而定义输出值
TIA 杰米特
最佳答案
自己解析它们并不难,但如果您需要快速且可能准确的结果,您可以使用现有库之一来解析算术表达式,例如 JEP或者也许是 Simple Parser for Arithmetic Expressions .
参见 Jep Console一个 sample 。 看起来 Jep 是付费软件。这可能不是问题,否则正如我所写,您应该能够找到许多等效的库。
关于java - 将插入的字符串转换为可编译的表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/962778/