關於一些Java基礎數據類型的常用方法的應用場景的小思考
阿新 • • 發佈:2018-07-03
get light || 成了 一半 ava 類型 這樣的 style
昨天遇到一個問題,按照我的一半解決方法是傳一個參數,然後通過參數來控制邏輯處理;但是領導發現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這個問題就得到了完美的解決;
雖然是一個小問題,但是暴露了太多,首先沒有多思考,然後是平時的積累不夠,常用的函數在意識裏保留的不多!總的來說還是經驗不夠啊!
總結:多思考,看下有沒有更好的解決方案,不要著急著開幹,你要知道,你寫的代碼在別人看來太垃圾,人家就會認為你的水平很垃圾,這樣不好,你曉得伐???
關於一些Java基礎數據類型的常用方法的應用場景的小思考