JEval使用实例

论坛 期权论坛 脚本     
匿名技术用户   2020-12-30 17:58   11   0

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
 * /

分享到 :
0 人收藏
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

积分:7942463
帖子:1588486
精华:0
期权论坛 期权论坛
发布
内容

下载期权论坛手机APP