[英]Best Practice - Collection.add() and handling boolean return value
[英]OptaPlanner Best Practices for handling a requirement for calculations to determine a boolean return value
考虑云计算机示例。 如果问题集只是稍作改动,该怎么办?它会像这样改变整个方程:
假设其中一个要求(例如,内存要求)仅需返回布尔值true或false,则无论进程内存要求是否适合该云计算机存储的内存分配。
但是,为此,它首先必须执行一些Java计算以得出该确定结果,例如以某种方式检查数组中的值。
(a)处理布尔返回值(是否合适)和(b)处理执行一些Java计算以确定布尔返回值的要求时,OptaPlanner最佳做法是什么?
我可以说得更具体些,但是直到需要时我才将水弄糊涂。
这是有效的:
@PlanningEntity class MyEntity {
private MyValue var;
@PlanningEntity
public MyValue getVar() {...}
// Smart getters
public boolean isVarCool {
return var != null && var.isCool();
}
public boolean isVarCoolAndalive {
return var != null && var.isCool() && var.isAlive();
}
public int getVarWeight {
return var == null ? 0 : var.getAge() * this.getSomethingElse();
}
}
然后在约束中使用它:
rule x when MyEntity(varCool = false) then ... end
rule y when MyEntity(varWeight > 10) then ... end
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.