3

System.Linq.Expressions 命名空间包含大量用于 .Net 语言中的所有构造的 Expression 类。您可以使用这些类的对象构建表达式树,然后可以即时编译和执行。

在 Java 世界中是否有类似的东西,我可以在其中构建表达式树,即时编译它们,然后执行它们?

只是给你一个非常简单的例子,我需要一个库来允许我写这样的东西:

BinaryExpression add = new BinaryExpression(BinaryOperators.Add, new ConstantExpression(10), new ConstantExpression(20));

Executable exec = add.compile();
System.out.println(exec.Execute()); // <= this would print 30

谢谢

只是一个更新。找到了这个库,它符合我的想法:http ://unkrig.de/w/janino 。

4

0 回答 0