对MAP 进行排序 并遍历取值

来源:互联网 发布:存档软件 编辑:程序博客网 时间:2024/05/30 02:24
/** * 对map进行降序排列 * @param goodsCateMap * @return */private Map<String, Long> Descending(Map<String, Long> goodsCateMap) {List<Map.Entry<String, Long>> list = new LinkedList<Map.Entry<String, Long>>(goodsCateMap.entrySet());Collections.sort(list, new Comparator<Map.Entry<String, Long>>() {public int compare(Map.Entry<String, Long> o1, Map.Entry<String, Long> o2) {return (o1.getValue()).compareTo(o2.getValue());}});Collections.reverse(list);//降序排列Map<String, Long> result = new LinkedHashMap<String, Long>();for (Map.Entry<String, Long> entry : list) {result.put(entry.getKey(), entry.getValue());}return result;}



/* * 遍历goodsCateMap 取出前value值前3的值 */private String ergodicMap(Map<String, Long> goodsCateMap) {String str="";for (Map.Entry<String, Long> entry : goodsCateMap.entrySet()) {System.out.println("key= " + entry.getKey() + " and value= " + entry.getValue());str +=  entry.getKey()+",";}String array[] = str.split(",");String result="";for(int i=0;i<array.length && i<3;i++){if(i==array.length-1||i==2){result += array[i];}else{result +=array[i]+",";}}


0 0
原创粉丝点击