日期:2014-05-20  浏览次数:20601 次

高手请看:Java怎么将一个含有逻辑运算符的字符串转化成逻辑表达式???
如题
例如:String str = "(a >= 0 && a <= 5)";
  现在知道a的值,怎么知道a是否符合str这个字符串,我知道可以截字符串,但是真正的业务逻辑串很麻烦,
 

------解决方案--------------------
截吧。。。
------解决方案--------------------
Java code
import javax.script.*;
public class TestScript {
    public static void main(String[] args) throws Exception {
        String str = "(a >= 0 && a <= 5)";
        ScriptEngineManager manager = new ScriptEngineManager();
        ScriptEngine engine = manager.getEngineByName("js");
        engine.put("a",4);
        Object result = engine.eval(str);
        
        System.out.println("结果类型:" + result.getClass().getName() + ",计算结果:" + result);

    }
}

------解决方案--------------------
楼上的厉害,.......