JAVA公式解析示例
// 數值型
Expression exp = new Expression("(x + y)/2");
Map<String, BigDecimal> variables = new HashMap<String, BigDecimal>();
variables.put("x", new BigDecimal("4.32"));
variables.put("y", new BigDecimal("342.1"));
BigDecimal result = exp.eval(variables);
System.out.println(result);
// 布爾型
Expression ww = new Expression("( A && B ) || C ");
Map<String, BigDecimal> vs = new HashMap<String, BigDecimal>();
vs.put("A", new BigDecimal("0"));
vs.put("B", new BigDecimal("1"));
vs.put("C", new BigDecimal("1"));
System.out.println(ww.eval(vs));
// 布爾型
Expression dd = new Expression(" A > 200 ");
Map<String, BigDecimal> as = new HashMap<String, BigDecimal>();
as.put("A", new BigDecimal("12000"));
System.out.println(dd.eval(as));
Expression exp = new Expression("(x + y)/2");
Map<String, BigDecimal> variables = new HashMap<String, BigDecimal>();
variables.put("x", new BigDecimal("4.32"));
variables.put("y", new BigDecimal("342.1"));
BigDecimal result = exp.eval(variables);
System.out.println(result);
// 布爾型
Expression ww = new Expression("( A && B ) || C ");
Map<String, BigDecimal> vs = new HashMap<String, BigDecimal>();
vs.put("A", new BigDecimal("0"));
vs.put("B", new BigDecimal("1"));
vs.put("C", new BigDecimal("1"));
System.out.println(ww.eval(vs));
// 布爾型
Expression dd = new Expression(" A > 200 ");
Map<String, BigDecimal> as = new HashMap<String, BigDecimal>();
as.put("A", new BigDecimal("12000"));
System.out.println(dd.eval(as));
需要eval.jar
posted on 2014-04-02 17:07 zhaonp 閱讀(340) 評論(0) 編輯 收藏 所屬分類: Java