jeval是为为你的Java应用程序提供可加入的、高性能、数学、 布尔和函数表达式的解析和运算的高级资源包。
下面这个例子包含了JEval常用功能:
package demo0;
import net.sourceforge.jeval.EvaluationException;
import net.sourceforge.jeval.Evaluator;
/**
* JEval使用实例
* @author mengfeiyang
* @version JEval 0.9.4
*/
public class JEvalSample {
public static void main(String args[]) {
Evaluator evaluator = new Evaluator();
try {
System.out.println("1.-->"+evaluator.evaluate("1+2*3-2/1")); //直接计算字符串型的数学表达式
System.out.println("2.-->"+evaluator.evaluate("toUpperCase(trim( trim(' a b c ') ))")); //执行java中的方法
evaluator.putVariable("a", "'Hello'");//定义字符串变量
evaluator.putVariable("b", "'World'");
evaluator.putVariable("c", "1"); //定义数字变量
evaluator.putVariable("d", "2");
System.out.println("3.-->"+evaluator.evaluate("#{a}")); //输出字符串
System.out.println("4.-->"+evaluator.evaluate("#{b}"));
System.out.println("5.-->"+evaluator.evaluate("#{PI}"));
System.out.println("6.-->"+evaluator.evaluate("#{a} + ' ' + #{b} + '!'")); //拼接后输出
System.out.println("7.-->"+evaluator.evaluate("(#{c} + #{d}) - #{c}")); //拼接后输出计算结果
} catch (EvaluationException ee) {
System.out.println(ee);
}
}
}
//执行结果如下:
/**
* 1.-->5.0
* 2.-->'A B C'
* 3.-->'Hello'
* 4.-->'World'
* 5.-->3.141592653589793
* 6.-->'Hello World!'
* 7.-->2.0
* /
|