import java.util.HashMap;
import java.util.Map;
import com.googlecode.aviator.AviatorEvaluator;
@SuppressWarnings("all")
public class ExpressionUtil {
/**
* check the object if compare the "val" expression
*
* @param expression
* "condition expression"
* @param obj
* "the object need to check if compare the expression"
* @return
*/
public static boolean isMatchExpression(String expression, Object obj) {
Double val = Double.parseDouble(obj.toString());
Map env = new HashMap();
env.put("val", val);
return (Boolean) AviatorEvaluator.execute(expression, env);
}
public static void main(String[] args) {
System.out.println(ExpressionUtil.isMatchExpression(
"(val < 2 || val > 3.8) && ( val != 8190 && val != 8191 )", 7.07)); //true
}
}
最后
以上就是怕孤单小兔子最近收集整理的关于google AviatorEvaluator类,使条件判断更简单的全部内容,更多相关google内容请搜索靠谱客的其他文章。
发表评论 取消回复