Można użyć TreeMap który wewnętrznie realizuje poniżej SortedMap jest przykładem
Sortowanie według rosnącej zamawiającego:
Map<Integer,String> ascsortedMAP = new TreeMap<Integer,String>();
ascsortedMAP.put(8, "name8");
ascsortedMAP.put(5, "name5");
ascsortedMAP.put(15, "name15");
ascsortedMAP.put(35, "name35");
ascsortedMAP.put(44, "name44");
ascsortedMAP.put(7, "name7");
ascsortedMAP.put(6, "name6");
for(Map.Entry<Integer, String> mapData : ascsortedMAP.entrySet()) {
System.out.println("Key : " +mapData.getKey()+ "Value : "+mapData.getValue());
}
Sortowanie według malejącej zamawiającego:
//Create the map and provide the comparator as a argument
Map<Integer,String> dscsortedMAP = new TreeMap<Integer,String>(new Comparator<Integer>()
{
@Override
public int compare(Integer o1, Integer o2) {
return o2.compareTo(o1);
}
});
dscsortedMAP.putAll(ascsortedMAP);
for(Map.Entry<Integer, String> mapData : dscsortedMAP.entrySet()) {
System.out.println("Key : " +mapData.getKey()+" Value : "+mapData.getValue());
}
dla dalsze informacje o SortedMAP przeczytać http://examples.javacodegeeks.com/core-java/util/treemap/java-sorted-map-example/
Ale SortedMap to interfejs. TreeMap implementuje SortedMap. –
Zobacz odpowiedź opublikowaną przez '@ user157196' tutaj http://stackoverflow.com/questions/109383/how-to-sort-a-mapkey-value-on-the-values-in-java – Bitmap
Szukaj Tom Jefferys ' odpowiedź – JohnnyLambada