if-else的优化

131 阅读1分钟

1.三元运算符

    Integer userId = AuthUtil.getUserIdFromThreadLocal();
    if (customer.getUserId() == null || customer.getUserId().equals(userId)) {
      return BasicCompanyInfo.builder()
        .companyWithBLOBs(companyWithBLOBs)
        .statusCode(CompanyStatusEnum.NOT_CONFIRMED.getValue()).build();
    }
    return BasicCompanyInfo.builder()
      .companyWithBLOBs(companyWithBLOBs)
      .statusCode(CompanyStatusEnum.CONFIRMED.getValue()).build();
可替换为
    boolean hasAuth = customer.getUserId() == null || customer.getUserId().equals(userId);
    Integer statusCode = hasAuth ? CompanyStatusEnum.NOT_CONFIRMED.getValue() : CompanyStatusEnum.CONFIRMED.getValue();
    return BasicCompanyInfo.builder()
      .companyWithBLOBs(companyWithBLOBs)
      .statusCode(statusCode)
      .build();