将数据按某种key做键生成数据

	Map<String,List<Map<String,String>>>  zjbsMapList=getLjsj(zdxxList,"ZDBS");
	/**
	 * 将数据按某种key做键生成数据(必须按照Key排序)
	 * @param ljdyList  
	 * @param key  把某个字段当作key
	 * @return
	 */
	@Override
	public Map<String,List<Map<String,String>>> getLjsj(List<Map<String,String>> ljdyList,String key){
		Map<String,List<Map<String,String>>> ljdyMap=new LinkedHashMap<String,List<Map<String,String>>>();
		if(ljdyList!=null &&!ljdyList.isEmpty()) {
			String TABLEID="";
			List<Map<String,String>> ljList=new ArrayList<Map<String,String>>();
			for(Map<String,String> ljMap:ljdyList) {
				if(TABLEID.equals(ljMap.get(key))) {
					ljList.add(ljMap);
				}else {
					//初始值第一次
					if(!TABLEID.isEmpty()) {
						ljdyMap.put(TABLEID, ljList);
						ljList=new ArrayList<Map<String,String>>();
					}
					TABLEID=ljMap.get(key);
					ljList.add(ljMap);
				}
			}
			//给最后一组数据放入map
			ljdyMap.put(TABLEID, ljList);

		}
	
		return ljdyMap;
		
	}

猜你喜欢

转载自blog.csdn.net/qq_26676207/article/details/78933251