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

本文通过一个具体的案例,展示了如何利用String的indexOf方法替代equals方法进行字符串比较,从而简化代码并提高可读性和效率。这一改动不仅解决了原有逻辑的问题,还避免了额外参数的传递。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

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

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

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

转载于:https://www.cnblogs.com/YLQBL/p/9257806.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值