2013-03-05 69 views
1

我有UnsortedMap<String, CustomObject>.這裏鍵雖然字符串類型存儲數值。我們如何使用SortedMap接口來對Map進行排序?

雖然有很多方法來排序映射,但我想要使用SortedMap接口進行排序。

有什麼辦法可以達到這個目的。任何幫助將不勝感激

+2

'SortedMap'沒有排序,它表示'Map'實現是排序的(即它有一些總排序)。 – 2013-03-05 10:02:44

+0

感謝馬克......其實這是我的困惑。所以它是用於排序的treeMap而不是SortedMap接口。 – Prateek 2013-03-05 10:10:43

+1

你可能想澄清你的問題,因爲這不是你問你的問題(或者至少:那不是我怎麼讀的) – 2013-03-05 10:24:41

回答

1

請參閱SortedMap,特別是所有已知的實現類

使用TreeMap可能是不壞你的情況:

SortedMap<String,CustomObject> map = new TreeMap<String,CustomObject>(); 
map.putAll(yourUnsortedMap); 

在一個側面說明,如果你知道你的鑰匙是數字,爲什麼沒有地圖是擦除<Integer,CustomObject>代替?

乾杯,

+0

我們也可以這樣做:Map map = new TreeMap <字符串,CustomObject>();然後我們也得到了排序map.then爲什麼有sortMap接口 – Prateek 2013-03-05 10:08:57

+1

@Prateek看看[SortedMap]的api文檔(http://docs.oracle.com/javase/7/docs/api/java/util/SortedMap。 html)它有額外的方法,只有當實現有訂單時纔有意義。 – 2013-03-05 10:12:00

相關問題