请问,连续表达式计算时"d=a/b; d+c",当a=10, b=0,c=5时,计算结果希望等于5,如何解决?
Closed this issue · 0 comments
Beknown-J commented
`public class AviatorExample {
public static void main(String[] args) {
// 注册自定义函数
AviatorEvaluator.addFunction(new SafeDivideFunction());
AviatorEvaluator.addFunction(new IsNilFunction());
// 示例公式
String formula = "d=a/b; d+c";
// 编译表达式
Expression expression = AviatorEvaluator.compile(formula);
// 设置参数
Map<String, Object> env = new HashMap<>();
env.put("a", 5);
env.put("b", 0); // 这里会引发除零
env.put("c", 10);
// 执行表达式
Object result = expression.execute(env);
// 输出结果
System.out.println("结果: " + result);
}
}`