ArrayList轉成HashMap再轉成LinkedHashMap 自己的解決方案


做天津傑超項目中賽事活動作品審核中寫的一段代碼:

 1 //獲取全部作品
 2 ActivityProductionQueryCommond productionQueryCommond=new ActivityProductionQueryCommond();
 3 productionQueryCommond.setSearchProductionWorksId(worksValidCommond.getProductionWorksId());
 4 List<ActivityProductionValidCommond> productionValidCommonds=(List<ActivityProductionValidCommond>) this.activityProductionService
    .findAllList(productionQueryCommond);
5 //循環分組 6 Map<String, List<ActivityProductionValidCommond>> proHashMap=new HashMap<String, List<ActivityProductionValidCommond>>(); 7 for (ActivityProductionValidCommond production : productionValidCommonds) { 8 if(proHashMap.containsKey(production.getProductionGroupId())) { 9 proHashMap.get(production.getProductionGroupId()).add(production); 10 }else { 11 List<ActivityProductionValidCommond> proList=new ArrayList<ActivityProductionValidCommond>(); 12 proList.add(production); 13 proHashMap.put(production.getProductionGroupId(), proList); 14 } 15 } 16 List<String> keyList=new ArrayList<String>(proHashMap.keySet()); 17 Collections.sort(keyList);//key排序 空在最上面 18 Map<String, List<ActivityProductionValidCommond>> proLinkedMap=new LinkedHashMap<String, List<ActivityProductionValidCommond>>(); 19 //生成有序map 20 for (String key : keyList) { 21 if(PropertyUtil.objectNotEmpty(key)) { 22 ProductionGroupValidCommond group=this.productionGroupService.find(key); 23 key=group.getProductionGroupName(); 24 }else { 25 key="未分組"; 26 } 27 proLinkedMap.put(key, proHashMap.get(key)); 28 }

寫的不好。請大神們指正。我改。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM