有没有更好的方法来写这个逻辑.要求是按照特定的顺序应用一系列条件.这是对条件逻辑的颠覆,假设它就像一个漏斗.如果前一条规则或条件没有产生任何结果,则它必须执行下一条规则或条件.我试过Switch,但这似乎也不是一个合适的解决方案.
private List<String> filteredData(){
List<String> filteredList = new ArrayList();
filteredList.addAll(method1())
if(CollectionUtils.isEmpty(filteredList){
filteredList.addAll(method2())
}
if(CollectionUtils.isEmpty(filteredList){
filteredList.addAll(method3())
}
if(CollectionUtils.isEmpty(filteredList){
filteredList.addAll(method4())
}
if(CollectionUtils.isEmpty(filteredList){
filteredList.addAll(method5())
}
if(CollectionUtils.isEmpty(filteredList){
filteredList.addAll(method6())
}
if(CollectionUtils.isEmpty(filteredList){
filteredList.addAll(method7())
}
return filteredList;
}