我有Expression对象,它具有以下内容:
- 操作员
- 范围
- 价值
提到的每个简单表达式都可以组合成一个复合表达式。
public SimpleExpresssion createcompound(SimpleExpression simple1,SimpleExpression simple2)
{
CompoundExpression ce = new CompoundExpression();
ce.lhs(simple1);
ce.rhs(simple2);
ce.operator(AND);
}
一个复杂的示例看起来像 ((1AND2)OR(3OR4)) 其中 1,2,3,4 是 Expression 对象。我正在寻找一种逻辑来根据表达式中的括号偏好来评估表达式。注意: CompoundExpression是Expression的扩展类,因此最终输出是 Expression 对象。容易解决吗?如果不是,我有什么选择