1、treemap預設順序是按照map的key來順序排序的。
2、自定義順序:需要把treemap轉換成list,通過重寫comparator方法去重新定義順序。
public
class
mytreemap
//通過key倒序排序
collections.
sort
(treemaplist,
newcomparator
>()
});
system.out.
println
("key倒序排列------------------");
for(
int i =
0; i < treemaplist.
size()
; i++
)//通過value倒序排序
collections.
sort
(treemaplist,
newcomparator
>()
});
system.out.
println
("value倒序排列------------------");
for(
int i =
0; i < treemaplist.
size()
; i++
)}
結果
排序前--
----
----
----
----
abc=
3ad=
1bc=1c=
2key倒序排列--
----
----
----
----c=2
bc=1
ad=1
abc=
3value倒序排列--
----
----
----
----
abc=3c=
2bc=
1ad=
1
TreeMap集合如何按照Value進行排序
我們知道,treemap集合是按照key進行排序的,如何按照value進行排序呢?現在有乙個treemap集合 鍵值分別為man類和woman類,他們的compareto 方法都是按照年齡排序,現在我模擬了treemap按照value進行排序的方法。演算法 1.遍歷原treemap集合,建立個新的t...
TreeMap根據value排序
首先自己寫乙個比較器,實現comparator介面,自己寫乙個構造方法,將乙個map集合傳遞進去。class valuecomparator implements comparator override public int compare string o1,string o2 else 使用 p...
TreeMap對value的排序
我們都知道treemap是排序的,但是它是對key進行排序的,要對value進行排序,可以用下面這種方法 大致的思路是把treemap的entryset轉換成list,然後使用collections.sor排序。mapresult new treemap result.put aaaa 4 resu...