List<Level2> leve2 = .... level2.sort((a,b)->{ int ret = 0; for (String s : sortPolicyCode) { ILevel2InventorySorter sorter = SpringBeanFactory.getBean(s,ILevel2InventorySorter.class); ret = sorter.calculateSortNumber(a, b, orderType, warehouseId); if(ret != 0){ break; } } return ret; });
其中sort的原理是
如果a>b 返回1 ; a == b 返回0 ;a < b 返回-1
则是升序排序,默认升序排序
如果a < b 返回-1,a == b 返回0 ; a < b 返回-1
则是降序排序,