gpt4 book ai didi

java - 如何在不显式分配的情况下初始化 Condition 对象?

转载 作者:行者123 更新时间:2023-11-30 03:45:08 25 4
gpt4 key购买 nike

有一些example:

Condition condition;

condition = CAR.COLOR.eq("blue");
condition = condition.or(CAR.MODEL.eq("Genesis"));
condition = condition.or(CAR.MANUFACTOR.eq("ford").and(CAR.COLOR.eq("blue")));

是否有某种方法可以在不显式分配的情况下初始化 org.jooq.Condition 对象?像这样的东西:

Condition condition = new Condition();

然后我想在 for-each 循环中增加我的条件并在某种方法中返回此条件对象。但如果我这样做:

public Condition getRuleConditions(List<Rule> rules){
Condition condition;
for(Rule rule: rules){
condition = condition.or(rule.getField().eq(rule.getValue()));
}
return condition;
}

我无法返回此 Condition 对象。

最佳答案

您有两个选择:

使用初始虚拟条件:

Condition condition = DSL.falseCondition();
for (Rule rule : rules) {
condition = condition.or(rule.getField().eq(rule.getValue()));
}

使用null:

Condition condition = null;
for (Rule rule : rules) {
Condition c = rule.getField().eq(rule.getValue());
condition = (condition == null) ? c : condition.or(c);
}

在第二个示例中,当然,生成的Condition 可以为null,并且您必须在代码中的其他位置处理该问题。在第一个示例中,生成的 Condition 永远不会是 null

关于java - 如何在不显式分配的情况下初始化 Condition 对象?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25936097/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com