这段代码可以进行一些优化:

  1. 可以使用isEmpty()方法代替size()==0,更加简洁易懂。

  2. 可以将'9934'和'11'这些常量定义为静态变量,以增加代码可读性和可维护性。

  3. 可以将 '9934'.equals(regAndSetlDTO.getMedType()) 和 '11'.equals(regAndSetlDTO.getSetlCalType()) 这两个判断语句提取出来作为方法,以便重复使用。

  4. 可以将异常信息作为常量定义,以增加代码可读性和可维护性。

改进后的代码如下:

private static final String MED_TYPE_9934 = '9934';
private static final String SETL_CAL_TYPE_11 = '11';
private static final String ERROR_MSG = '该患者的出院诊断:%s不在多疗程住院病种范围内,请检查主诊断是否正确';

if (bigDiseList.isEmpty()) {
    if (MED_TYPE_9934.equals(regAndSetlDTO.getMedType())) {
        return false;
    }
    if (isSetlCalType11(regAndSetlDTO)) {
        throw new MbsException(String.format(ERROR_MSG, zzdCode));
    }
}

private boolean isSetlCalType11(RegAndSetlDTO regAndSetlDTO) {
    return SETL_CAL_TYPE_11.equals(regAndSetlDTO.getSetlCalType());
}
Java代码优化:if语句、常量定义和方法提取

原文地址: https://www.cveoy.top/t/topic/nPax 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录