1. 程式人生 > >查詢出多對多的結果進行再分組

查詢出多對多的結果進行再分組

有時候查出的資料需要進行再次分組, (List<Object> 分組為   Map<String,List<Object>)

  以下就是 根據資料庫中查出來資料物件的一個欄位的作為key, 將資料根據這個欄位進行分組,

常用於填寫表格, 

 


public static Map<String,List<JSONObject>> GroupList(List<JSONObject> list,String key){
         
         Map<String,List<JSONObject>> map = new HashMap<>();
         for(JSONObject db:list){
             String keys  = db.getString(key);
             //判斷是否已經存在此內容
             if(map.containsKey(keys)){
                 map.get(keys).add(db);
             }else{
                 List<JSONObject> valdb = new ArrayList<>();
                 valdb.add(db);
                 map.put(keys, valdb);
             }
         }
         
         return map;
     }