我使用 JEXL3 将用户输入作为字符串转换为数学函数,我想使用^
asMath.pow()
所以我阅读了关于扩展JexlArithemtic
以覆盖的信息,bitwiseXor
如下所示:http: //apache-commons.680414.n4.nabble.com/JEXL-Evaluating-数学表达式-td4112606.html
此示例适用于 Jexl2,如果我尝试覆盖,我使用 Jexl3:
class JexlArithmeticWithPow(lenient: Boolean) : JexlArithmetic(lenient) {
override fun bitwiseXor(left: Any, right: Any): Any { //bitwiseXor is final and cannot be overriden
val l = toDouble(left)
val r = toDouble(right)
return Math.pow(l, r)
}
}
是否有另一种可能转换^
为Math.pow
而不是bitwiseXor
?