我必须从 D/B 中检索一组列值并将其作为条件进行检查。
例如,我会有 "value > 2"
这样的字符串, "4 < value < 6"
在 D/B 列中。 (值是一直比较的值)。我将在我的代码中声明一个变量值,我应该评估这个条件。
int value = getValue();
if (value > 2) //(the string retrieved from the D/B)
doSomething();
我该怎么做?任何帮助都非常感谢。谢谢。
最佳答案
这是一个使用标准 (Java 1.6+) 脚本库的示例:
import javax.script.ScriptEngine;
import javax.script.ScriptEngineManager;
public class Test {
public static void main(String[] args) throws Exception {
ScriptEngineManager factory = new ScriptEngineManager();
ScriptEngine engine = factory.getEngineByName("JavaScript");
engine.eval("value = 10");
Boolean greaterThan5 = (Boolean) engine.eval("value > 5");
Boolean lessThan5 = (Boolean) engine.eval("value < 5");
System.out.println("10 > 5? " + greaterThan5); // true
System.out.println("10 < 5? " + lessThan5); // false
}
}
关于java - 将字符串评估为条件 Java,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10917878/