java8 sort 排序原理
在线上环境出现过一次依据字符串包含数字的排序问题,如:
arr = G01-ABC-00-1 | G01-ABC-00-2 | G01-ABC-00-10 | G01-ABC-00-20
排序效果为 arrRes = G01-ABC-00-1 | G01-ABC-00-10 |G01-ABC-00-2 | G01-ABC-00-20
业务需要的是arr的排序结果,明显arrRes 不是他需要的
百度过解决的思路有,依据中划线-切割对如果是数字的则以数字排序,这样能满足业务A的需求,而有时候业务B可能不需要以中划线切割排序;
还好有产品A表达了库位编码规范,即库位编号统一用字符表示,即二位数字 则表示为 01 ,10, 02这样子.