关于一些Java基础数据类型的常用方法的应用场景的小思考

昨天遇到一个问题,按照我的一半解决方法是传一个参数,然后通过参数来控制逻辑处理;但是领导发现String的一个方法也可以完全完成该问题!而我完全没有get到这个点!

so,我认识到了自己的知识盲区;基础不要太差哦!!!

先描述下这个问题吧,是这样的,上代码:

if (null == bussTwInfo || !WFConstant.ObjType.PROJ_FEE_APPLYINFO.equals(bussTwInfo.getObjtype()))
{
  throw new BmsCommException(IConstantBmsException.QUERY_APPLY_REFUND_FALIED, new Exception("流程参数错误"));
}

  走到这里报错了,原因是:!WFConstant.ObjType.PROJ_FEE_APPLYINFO.equals(bussTwInfo.getObjtype())这个条件不满足,WFConstant.ObjType.PROJ_FEE_APPLYINFO的实际值是W003001

 而bussTwInfo.getObjtype()的实际值是;W003001_01,

       这是一个普通流程和风险项目的流程处理片段代码,我想的是传一个boolean值的参数来控制,如果是风险项目就走风险项目的相关代码否则就走正常的代码处理;结果领导说不用,然后给我上了一课!上代码:

if (null == bussTwInfo || WFConstant.ObjType.PROJ_FEE_APPLYINFO.indexOf(bussTwInfo.getObjtype())>0)
{
    throw new BmsCommException(IConstantBmsException.QUERY_APPLY_REFUND_FALIED, new Exception("流程参数错误"));
}

  从equals换成了indexOf这个问题就得到了完美的解决;

虽然是一个小问题,但是暴露了太多,首先没有多思考,然后是平时的积累不够,常用的函数在意识里保留的不多!总的来说还是经验不够啊!

总结:多思考,看下有没有更好的解决方案,不要着急着开干,你要知道,你写的代码在别人看来太垃圾,人家就会认为你的水平很垃圾,这样不好,你晓得伐???

猜你喜欢

转载自www.cnblogs.com/YLQBL/p/9257806.html