JAVA - 表达式解析和评估库

2022-09-04 20:57:16

我正在寻找一个JAVA库来解析和计算表达式。我搜索并尝试了一些库,如Apache的JEXL和Jeval,但它们并不完全是我需要的。

我的要求:

  1. 支持所有值类型(即 int、double、boolean、String 等)
  2. 支持所有已知的数学和逻辑运算符(+,-,*,<,<=等)
  3. 支持变量(没有任何特殊符号 - 例如在Jeval变量a中应该像#{a}一样编写 - 对我来说不够好)
  4. 支持自定义函数 - 具有类型实施和验证功能

有什么建议吗?


答案 1

试试Janino。它是一个运行时内存中编译器,可用作表达式计算器。也许这对你来说是正确的。


答案 2

就像建议的那样,你可以使用JavaScript。但是,您也可以看看Spring EL,它支持您的要求。


推荐