Java表达式计算引擎:Expr4J

    blog迁移至: http://www.micmiu.com

本文介绍一个开源的Java表达式计算引擎:
Expr4J Expression Calculation Engine for Java
官方主页: http://expr4j.sourceforge.net/
可以在官网下载相关的源码和lib包,本文附件也提供下载: expr4j-0.0.1-src.zip
/**
 * java 表达式计算引擎
 * @author Michael sun
 */
public class TestExpr4j {

    /**
     * @param args
     */
    public static void main(String[] args) {
        SimpleEvaluationContext context = new SimpleEvaluationContext();
        System.out.println("Expr Evaluator v1.0");
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        while (true) {
            try {
                System.out.print(">");
                String line = br.readLine();
                if (line == null)
                    break;
                Expr e = ExprParser.parse(line);
                Exprs.toUpperCase(e);
                if (e instanceof ExprEvaluatable) {
                    e = ((ExprEvaluatable) e).evaluate(context);
                }
                System.out.println(e);
            } catch (Exception e) {
                e.printStackTrace();
            }
        }

    }

}

测试执行结果如下:
Expr Evaluator v1.0
>25*36*(42-18*2)/3*2-45+89/46+13*2/32-45
3512.7472826086955
>10^2/5-(23/2)
8.5
>

你可能感兴趣的:(java,表达式,OpenSource,sourceforge,Expr4J)