java通过ScriptEngine类识别字符串形式的javaS

2018-07-30  本文已影响0人  haiyong6

java自带解析字符串为JavaScript,可用于字符串形式的公式计算,示例如下:

public class Test {
    static ScriptEngine jse = new ScriptEngineManager().getEngineByName("JavaScript"); 
    public static void main(String[] args) {
        String strs = "if(S >= 12 && S < 14) {(14 - S)*1000} else if(S >= 10 && S < 12){(12 - S)*3000 + 2000}";  
        double result = 0;
        try {
            result = (double) jse.eval(strs.replace("S", "11"));
        } catch (ScriptException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
        try {  
            System.out.println(result);  
        } catch (Exception t) {  
        }  
    }

把S=11带入公式,输出结果为:5000.0

上一篇下一篇

猜你喜欢

热点阅读