朋友提醒另一种方法,我试了一下效率极高,之前做的一比较真是蜗牛一样,下面贴出来!
// 新建set集合用于存放key值 Set arr = new HashSet(); // 新建集合用于接收去重过的Map List<Map<String, Object>> newlist = new ArrayList<Map<String, Object>>(); for (int i = 0; i < list.size(); i++) { Map m = list.get(i); // 判断ppdz的值是否已经存在于key内 if (arr.contains(m.get("ppdz"))) { continue; } //添加key的值进set arr.add(m.get("ppdz")); //储存进的集合 newlist.add(m); } // 遍历得到结果 for (Map m : newlist) { System.out.println(m.get("ppdz") + " " + m.get("name")); }效率是之前的8-10倍。。。。