昨天遇到一个问题,按照我的一半解决方法是传一个参数,然后通过参数来控制逻辑处理;但是领导发现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这个问题就得到了完美的解决;

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

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

最新文章

  1. frakti && RunPodSandbox 源码分析
  2. 安全关闭多Activity的Application
  3. Eclipse CDT 代码高亮配置
  4. VS2010字体设置+推荐字体
  5. Java创建Oracle数据库表
  6. 压力测试的轻量级具体做法 Apache ab
  7. NavMeshAgent 动态加载障碍物
  8. 向服务器写入错误日志-log
  9. javac.exe、 java.exe、 java虚拟机三者之间的区别与联系
  10. 201521123054 《Java程序设计》第13周学习总结
  11. Android安全–检测是否为Android模拟器
  12. 使用logstash同步mysql数据到elasticsearch
  13. JS数组映射保存数据-场景
  14. EXCEL日期格式要双击一下单元格才变正确格式
  15. LeetCode | HouseCode 算法题
  16. springcloud-3:required a bean of type 'com.netflix.discovery.DiscoveryClient' that could not be found.
  17. 3、SourceTree通过PUTTY连接GitLab
  18. Android : 代码多维度管理(产品风味) - flavorDimensions & productFlavors
  19. chromium ②
  20. Additional information: 对 COM 组件的调用返回了错误 HRESULT E_FAIL

热门文章

  1. C/C++-左值、右值及引用
  2. 基于twemproxy和vip实现redis集群的无感知弹性扩容
  3. ArcGIS API for JavaScript使用中出现的BUG(1)
  4. springmvc项目搭建四-基于前端框架完善页面的数据显示
  5. MySQL密码忘了怎么办
  6. Socket常见错误代码与描述
  7. mii-tool与ethtool的用法详解
  8. [CF632A]Grandma Laura and Apples
  9. Python之利用reduce函数求序列的最值及排序
  10. 图解WinXP局域网共享设置步骤