很多时候,巧用标识会很大的减少代码量和厘清代码逻辑;比如下面,这里的entName和code都有可能为空,也可能都不为空,但是当两entName都不为空且相等,或者当两code都不为空且相等时,才会执行代码逻辑;这个需求,如果只用if else不用标识,那处理逻辑会重复的写到不同的判断中,而用标识后,就非常简单了。示例代码如下:
for(int i = 0;i < nextList.size();i++){
for(int j = 0;j < cumList.size();j++){
TaxCum nextCum = nextList.get(i);
TaxCum nowCum = cumList.get(j);
boolean flag2 = false;
if(StringUtils.isNotBlank(nextCum.getEntName()) && StringUtils.isNotBlank(nowCum.getEntName())){
if(nextCum.getEntName().equals(nowCum.getEntName())){
flag2 = true;
}
}
if(StringUtils.isNotBlank(nextCum.getCode()) && StringUtils.isNotBlank(nowCum.getCode())){
if(nextCum.getCode().equals(nowCum.getCode())){
flag2 = true;
}
}
if(flag2){
//处理业务逻辑
}
}
}