我是编程新手。我有一个我想验证的对象列表(不是短路,而是每个都运行一个验证规则列表)。在java中验证对象的最佳方法
最初我有一个巨大的if/else语句,但它看起来并不漂亮。我认为这样会更好:
foreach (object: objects) {
foreach (rule: validationRules) {
try {
rule.validate(object)
} catch {
// Write to log
// Increment counter for rule
}
}
}
我只是不知道如何去创建验证规则。我想使用Java 8谓词,因为我听说这是我应该使用的,但我不知道如何去做。我想我可能会创建一个与规则的接口,然后是定义了每个规则的实现以及规则列表。这听起来像是解决这个问题的好方法吗?
谢谢!
有没有更好的方式来编写这个循环使用Java 8风格的函数式编程? –
我有点老派,经验教我,代码需要清晰和简单([KISS原则](https://en.wikipedia.org/wiki/KISS_principle))。这有助于可维护性和错误修复。所以我认为你的直接循环和规则方法是一个更好的选择。我认为任何其他方法都不会更有效率。 – StephenG
太棒了,那我就去吧。谢谢! –