|  |      1akiakiseofficial      2019-04-15 09:34:04 +08:00 via iPhone 据我所知没有,但是你可以搜一搜 中缀表达式转后缀表达式 和 后缀表达式求解。 | 
|  |      2cnzjl      2019-04-15 09:34:09 +08:00 String s = Integer.toString((1+2*3 )-10/2); | 
|  |      3AlisaDestiny      2019-04-15 09:34:57 +08:00  1 | 
|  |      4chocotan      2019-04-15 09:36:38 +08:00  1 MathParser.org-mXparser | 
|      5lihongjie0209      2019-04-15 09:38:24 +08:00  1 直接调用 JavaScript 执行引擎? | 
|      6sigup      2019-04-15 09:42:41 +08:00 ```java ScriptEngineManager factory = new ScriptEngineManager(); ScriptEngine engine = factory.getEngineByName("JavaScript"); System.out.println(engine.eval("(1+2*3)-10/2")); ``` 不过要做好校验,否则就是后门了 | 
|  |      7hoosin      2019-04-15 09:55:10 +08:00 @lihongjie0209 JavaScript  eval 有安全问题,所以约等于废弃了 | 
|      8HuHui      2019-04-15 10:02:36 +08:00 via Android jexl 完全满足 | 
|      9loveCoding      2019-04-15 10:16:36 +08:00 看看这个库 org.apache.commons:commons-jexl3 | 
|      10loveCoding      2019-04-15 10:16:46 +08:00 @HuHui 没看到你已经发了 | 
|      11lihongjie0209      2019-04-15 10:17:48 +08:00 | 
|      12lihongjie0209      2019-04-15 10:19:37 +08:00 @hoosin 或者是内嵌一个 groovy 引擎? | 
|  |      13BBCCBB      2019-04-15 10:23:56 +08:00 spring 的 spel 模块也可以 | 
|  |      14nekoneko      2019-04-15 11:30:16 +08:00 可以考虑自己做一个做计算的方法。算法可以参考逆波兰式 | 
|  |      15rizon      2019-04-15 11:38:50 +08:00 四则运算调用 js 引擎处理也是个选择,甚至通过跑 sql 来计算也是可以的。。  不过常规来说,四则运算解析工具类应该也很多吧。 | 
|  |      16rizon      2019-04-15 11:43:35 +08:00 | 
|  |      17stevenbipt      2019-04-15 11:54:10 +08:00 via Android  1 不行自己用两个栈写一个😂😂😂 | 
|      18jlhde123      2019-04-15 12:37:15 +08:00 ANTRL4 | 
|  |      19liujan      2019-04-15 12:52:21 +08:00 qlexpresss 试下,阿里出的 | 
|  |      20jinue9900      2019-04-15 13:48:21 +08:00 groovy 可以只要把双引号去掉就 Ok 了 | 
|      219684xtpa      2019-04-15 14:01:47 +08:00  ) 用 MVEL 也行 | 
|      22mrsatangel      2019-04-15 16:35:21 +08:00 推一把 killme2008 的 aviator https://github.com/killme2008/aviator | 
|  |      2313192262269 OP @AlisaDestiny #3 请问一下,你是怎样搜出来的?我百度输入“ java eval 函数”,找不到这个链接,是必须是要先翻译成英文再搜索吗? | 
|      24m2276699      2019-04-17 14:18:43 +08:00 sql? |