如题
例如:String str = "(a >= 0 && a <= 5)";
      现在知道a的值,怎么知道a是否符合str这个字符串,我知道可以截字符串,但是真正的业务逻辑串很麻烦,
      

解决方案 »

  1.   

    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); }
    }
    jdk1.6中可以直接这样用jdk1.5中需要以下jar:commons-logging-1.1.1.jar  , js.jar, bsf-all-3.0.jar