我正在尝试根据一组条件在列表中查找对象。基本逻辑是这样的
for (objectx obj : list)
{
if (object.property1 > criteria1)
//accept object
else (object.property1 == criteria1)
{
if (object.property2 > criteria2)
//accept object
else (object.property2 == criteria2)
{
if (object.property3 > criteria3)
... etc
}
}
}
有没有一种优雅的方法来简化这个烂摊子?
最佳答案
boolean accept = false;
for (int i = 0; i < object.numProps(); i++) {
if (object.prop[i] > criteria[i]) {
accept = true;
break;
} else if (object.prop[i] < criteria[i])
break;
// loop continues only if object.prop[i] == criteria[i]
}
关于java - 编写基于条件的 if 语句的优雅方式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7079517/