Function<T,R> R apply(T t); predicate 代码格式化

/** * @param innerCode * @return */ private String getValue1(int innerCode,Function<FP_BasicInfoRow, String> params) { SecuMainAllRow secuMainAllRow = SecuMainAll.of().enumrator().getRowByInnerCode(innerCode); if(secuMainAllRow!=null){ FP_BasicInfoRow fp_BasicInfoRow = FP_BasicInfo.of().enumrator().getRowByFinProCode(secuMainAllRow.getGilCode()); if(fp_BasicInfoRow!=null){ FP_IndicatorRow fp_IndicatorRow = FP_Indicator.of().enumrator().getRowByGilCode(params.apply(fp_BasicInfoRow)); if(fp_IndicatorRow!=null){ return fp_IndicatorRow.getChiName(); } } } return SVALUE; }

@ApiInfo(Name="BFP_INFO_SUBUNIT",Code={"41187"},ZhDescription="认购本金币种",ResultType=EFieldType.STRING,ApiType=APIType.Bank)
@APIParam(ZhName="内部编码",EnName="InnerCode",ParamType=EFieldType.INT,Required=true,Info="内部编码")
public String getBFP_INFO_SUBUNIT(int innerCode){
return getValue1(innerCode,FP_BasicInfoRow::getCurrencyUnit);
}

------------------------------或者-------------------------------------

/** * GilCode=952001.XH * @param innerCode=4012822 * @return */ @ApiInfo(Name="AFP_INFO_ABBR",Code={"41484"},ZhDescription="产品简称",ResultType=EFieldType.STRING,ApiType=APIType.Asset) @APIParam(ZhName="证券内部编码",EnName="InnerCode",ParamType=EFieldType.INT,Required=true,Info="证券内部编码") public String getAFP_INFO_ABBR(int innerCode) { String value = getFpSecuMainValue(innerCode,FP_SecuMainRow::getSecuAbbr); return FuncUtils.ISNULL(value, INVALID_STRING); }

1 //调用第一步,函数式接口前面的inndecode是业务逻辑,取得fin=gilcode的数据然后返回result 通过innercode获取gilcode 2 private <R> R getFpSecuMainValue(int innerCode, Function<FP_SecuMainRow, R> function) { 3 FP_SecuMainRow fpSecuMainRow = getFpSecuMain(innerCode); 4 if (fpSecuMainRow != null) { 5 return function.apply(fpSecuMainRow); 6 }else { 7 return null; 8 } 9 }
-------------------------------------用两个函数式接口



----------------------------------------------------------------------predicate------------------




浙公网安备 33010602011771号