1. 程式人生 > >java對Map按Value進行排序

java對Map按Value進行排序

		List <Map.Entry<String,Integer>> mapList = null;
		mapList=new ArrayList<Map.Entry<String,Integer>>(myMap.entrySet()); 
		  //通過比較器實現比較排序 
		  Collections.sort(mapList, new Comparator<Map.Entry<String,Integer>>(){ 
		   public int compare(Map.Entry<String,Integer> mapping1,Map.Entry<String,Integer> mapping2){
		     return mapping1.getValue().compareTo(mapping2.getValue()); 
		   } 
		  }); 
		  
		  for(Map.Entry<String,Integer> mapping:mapList){ 
		   output.write(mapping.getKey()+";"+mapping.getValue()+"\n"); 
		   System.out.println(number++); 
		  }

相關推薦

javaMapValue進行排序

List <Map.Entry<String,Integer>> mapList = null; mapList=new ArrayList<Map.Entry<String,Integer>>(myMap.entry

python的sorted函式字典value進行排序

場景:詞頻統計時候,我們往往要對頻率進行排序 sorted(iterable,key,reverse),sorted一共有iterable,key,reverse這三個引數。其中iterable表示可以迭代的物件,例如可以是dict.items()、dict.keys()等,key是一個函式,用來選取參與比

(java)根據mapvalue進行排序

程式碼如下:  public static List<Map.Entry<String, Integer>> getSortedHashtableByValue(Map<String,Integer> h) {             

JAVAMapvalue進行逆序排序

RT。程式碼如下。 //按照頻率的逆序進行排序 Set set=map.entrySet(); Map.Entry[] entries=(Map.Entry[

JavaMapValue排序

前言 Map是鍵值對的集合介面,它的實現類主要包括:HashMap,TreeMap,Hashtable以及LinkedHashMap等。 TreeMap 基於紅黑樹(Red-Black tree)的 NavigableMap 實現,該對映根據其鍵的自然順序進行排序,或者

JAVAmap按照值進行自定義排序

以POJ的一道題為例http://poj.org/problem?id=2945 Find the Clones Time Limit: 5000MS Memory Limit: 65536K Total Submissions: 8291 Accepted: 3

C++mapvalue進行排序

C++中,map是按key值大小排序儲存。有時候,我們需要對map的value進行排序,根據value的大小順序獲得key的序列。比較簡單的方法就是,重新定義一個新的map,新map的key和value正好是原來map的value和key,這樣新的map就按照原來map的va

python中如何字典按照value進行排序

方法一: dict= {'a':1,'b':4,'c':2} sorted(dict.items(),key = lambda x:x[1],reverse = True) 程式碼詳解: sorted(...):     sorted(iterable,

javaList型列表進行排序(通過內部類compare(**)方法重寫)

Collections.sort(upgradeUsefulList, new Comparator<List<Object>>(){     public int compare(List&l

java利用list的value進行排序

java中有排序的方法Collections.sort;可以直接利用這個排序list; eg: List<Map<String,String>> listmap=new ArrayList<Map<String,String>>

c++ mapvalue排序

map預設是按key值從小到大排序的,先改為按value排序。 基本思路就是:想直接用sort排序是做不到的,sort只支援陣列、vetctor等的排序,所以我們可以先把map裝進pair裡,然後再放

怎麼實現Map的值進行排序

我們知道Map是以鍵值對的介面,他的實現子類主要是: 1、Hashtable:底層是雜湊表資料結構,不可以存入空鍵和空值,執行緒是同步的,在JDK1.0版本出現, 2、HashMap:底層是雜湊表資料結構,可以存入空鍵和空值,執行緒是不同步的,在JDK1.2版本出現所以效率

MFC檔案檔名進行排序

用CFileFind類遍歷一個資料夾下的檔案,發現它並不是按照windows標準的按檔名排序方式排序的,比如說1.txt,2.txt,3.txt,4.txt,5.txt,...80.txt,81.txt,...100.txt,101.txt.....在windows下應該是

c++中mapvalue排序

int cmp(const pair<string, int>& x, const pair<string, int>& y)   //定義sort排序方式 {     return x.second > y.second;}

java一個int陣列進行排序、去重

思路: 1、使用 HashSet 進行去重 2、將 HashSet 變為 TreeSet 3、使用 TreeSet 進行排序

Python sorted 函式,字典進行排序

字典實際上並不能排序,我們排的是items,即dict.items(),將字典轉換成了一個列表sorted函式的原型為:sorted(iterable[, cmp[, key[, reverse]]])iterable:是可迭代型別型別;cmp:用於比較的函式,比較什麼由key決定,有預設值,迭代集合中的一

JAVA——MAP容器的Value值、key值進行排序

  今天在搞JAVA容器類題目的時候,碰到了一道對MAP容器的Value值排序的問題,額。。。當時無從下手,然後慌得一批,兩天沒看就將學的JAVA容器忘得一乾二淨,在這裡做一下詳細的學習和整理,ORZMAP部落格大佬。 首先在這裡進行理論儲備,對MAP容器有一個大致的瞭解:

Java——JavaMapValue欄位進行排序

      構造TreeMap可以指定Comparator,但是不能對value欄位進行排序。如果有需求對Value欄位排序,例如map存放的是單詞,單詞出現次數,怎麼按單詞次數排序呢?   可以先將map中的key-value放入list,然後用Collections

JavaMap根據鍵值(key)或者值(value)進行排序實現

public class SortTest { public static void main(String[] args){ List userlist=new ArrayList(); userlist.add(new User("dd","4")); userlist.add(new Us

如何map中的value進行排序

package com.demo.map; import java.util.Collections; import java.util.Comparator; import java.util.HashMap; import java.util.LinkedHashMap