while ((line = br.readLine()) != null) { totalNumber++; log.info("文件处理中--------line={}",line); strings = line.split("\\~\\!\\^"); if(strings == null || strings.length == 0){ break; } FinancialProductNotifyDto financialProductNotifyDto = new FinancialProductNotifyDto(); financialProductNotifyDto.setCustomerNo(strings[5]); String financialProductMsg = FinancialProductNotifyDto.FinancialProductEnum.getFinancialProductMsg(strings[2]); if(StringUtils.isEmpty(financialProductMsg)){ financialProductNotifyDto = null; continue; } 减少这段代码中的break和continue语句的总数,最多使用一条
时间: 2024-02-14 19:13:21 浏览: 60
可以使用一个布尔变量来代替 break 和 continue 语句。例如:
```
boolean shouldSkip = false;
while ((line = br.readLine()) != null && !shouldSkip) {
totalNumber++;
log.info("文件处理中--------line={}", line);
strings = line.split("\\~\\!\\^");
if (strings == null || strings.length == 0) {
shouldSkip = true;
} else {
FinancialProductNotifyDto financialProductNotifyDto = new FinancialProductNotifyDto();
financialProductNotifyDto.setCustomerNo(strings[5]);
String financialProductMsg = FinancialProductNotifyDto.FinancialProductEnum.getFinancialProductMsg(strings[2]);
if (StringUtils.isEmpty(financialProductMsg)) {
financialProductNotifyDto = null;
} else {
// process financialProductNotifyDto
}
}
}
```
这样,当出现需要跳出循环或者跳过当前迭代的情况时,只需要将 shouldSkip 设为 true 即可。这样代码更加简洁易懂,避免了使用 break 和 continue 导致的复杂度和难以维护的问题。
阅读全文