在Java字符串中检测操作符号

在Java字符串中检测操作符号,java,data-structures,expression,Java,Data Structures,Expression,目前我有一个字符串,它表示一个表达式,即2+4*8/2,有没有办法将其转换为一个非字符串的正则表达式,这样它就可以返回18 如果没有,是否有方法检测给定字符的运算符类型 用Java语言会有帮助 谢谢。您可以做的可能是将此字符串转换为字符数组,并且可以执行自己的实现,因为conmpiler无法将表达式转换为数学数学形式。非字符串的正则表达式是什么意思?要计算表达式的值吗?什么?你真的要求把它编译成一个数学表达式并运行它吗?Java本身不提供这样的方法。然而,Java有一个内置的Javascript

目前我有一个字符串,它表示一个表达式,即2+4*8/2,有没有办法将其转换为一个非字符串的正则表达式,这样它就可以返回18

如果没有,是否有方法检测给定字符的运算符类型

用Java语言会有帮助


谢谢。

您可以做的可能是将此字符串转换为字符数组,并且可以执行自己的实现,因为conmpiler无法将表达式转换为数学数学形式。

非字符串的正则表达式是什么意思?要计算表达式的值吗?什么?你真的要求把它编译成一个数学表达式并运行它吗?Java本身不提供这样的方法。然而,Java有一个内置的Javascript引擎,它提供了常用的eval方法。只要方程保持这么简单,你就可以用它来解析和计算方程。有关详细信息,请参阅链接副本。请注意,在发布问题之前,您应该进行快速研究,谢谢。