• TreeMapVALUE排序
• Map, Long> treeResult = new TreeMap, Long>(new ValueComparator(result)); treeResult.putAll(result); return treeResult; } 将需要排序的map集合传递给比较器，再将result中的键值对put到TreeMap中就行...
首先自己写一个比较器，实现Comparator接口，自己写一个构造方法，将一个map集合传递进去。

class ValueComparator implements Comparator<String> {

private Map<String, Long> map;

public ValueComparator(Map<String, Long> map) {
super();
this.map = map;
}

@Override
public int compare(String o1, String o2) {
if (map.get(o1) > map.get(o2)) {
return -1;
} else {
return 1;
}
}

}

使用代码

private Map<String, Long> sortResult(Map<String, Long> result) {
Map<String, Long> treeResult = new TreeMap<String, Long>(new ValueComparator(result));
treeResult.putAll(result);
return treeResult;
}
将需要排序的map集合传递给比较器，再将result中的键值对put到TreeMap中就行了。

展开全文
• package demo1;import java.util.Comparator;import java.util.HashMap;...import java.util.TreeMap;public class Testing {public static void main(String[] args) {HashMap map = new HashMap...

package demo1;
import java.util.Comparator;
import java.util.HashMap;
import java.util.Map;
import java.util.TreeMap;
public class Testing {
public static void main(String[] args) {
HashMap map = new HashMap<>();
ValueComparator vc = new ValueComparator(map);
TreeMap sorted_map = new TreeMap<>(vc);
map.put("A", 432.3);
map.put("B", 44.3);
map.put("C", 46.3);
map.put("D", 43.3);
sorted_map.putAll(map);
System.out.println(map);
System.out.println(sorted_map);
}
}
class ValueComparator implements Comparator{
private Map base;
public ValueComparator(Map base) {
this.base = base;
}
@Override
public int compare(String a, String b) {
if (base.get(a) >= base.get(b)) {
return 1;
}
return -1;
}
}

展开全文
• Map, Integer> treeMap = new TreeMap, Integer>(hashMap); System.out .println("Dispaly words and their count in ascending order of the word"); System.out.println(treeMap); List arrayList ...
import java.util.ArrayList;
import java.util.Collections;
import java.util.Comparator;
import java.util.HashMap;
import java.util.LinkedHashMap;
import java.util.List;
import java.util.Map;
import java.util.TreeMap;

public class CountAccurrenceOfWord {

public static void main(String[] args) {

String text = "Have a good day. Have a good class. Have a good visit. Have fun";

Map<String, Integer> hashMap = new HashMap<String, Integer>();

String[] words = text.split("[ .!?]");

for (int i = 0; i < words.length; i++) {

if (words[i].length() > 1) {

if (hashMap.get(words[i]) != null) {

int value = hashMap.get(words[i]).intValue();

value++;

hashMap.put(words[i], value);

} else

hashMap.put(words[i], 1);

}

}

Map<String, Integer> treeMap = new TreeMap<String, Integer>(hashMap);

System.out

.println("Dispaly words and their count in ascending order of the word");

System.out.println(treeMap);

List arrayList = new ArrayList(hashMap.entrySet());

Collections.sort(arrayList, new Comparator(){

public int compare(Object o1, Object o2) {

Map.Entry obj1 = (Map.Entry) o1;

Map.Entry obj2 = (Map.Entry) o2;

return ((Integer) obj2.getValue()).compareTo((Integer)obj1.getValue());

}

});

System.out.println(arrayList);

}
}
展开全文
• TreeMap默认实现只能根据key来排序，或者定义treeMap的时候new Comparator，自定义key排序的方法，但是不能按照value进行排序。 可以使用下面的方法，对value进行一次排序。 Map<String,Integer> map = new ...
TreeMap默认实现只能根据key来排序，或者定义treeMap的时候new Comparator，自定义key排序的方法，但是不能按照value进行排序。 可以使用下面的方法，对value进行一次排序。
Map<String,Integer> map = new TreeMap<String,Integer>();
List<Map.Entry<String,Integer>> list = new ArrayList<Map.Entry<String,Integer>>(map.entrySet());
Collections.sort(list, new Comparator<Map.Entry<String, Integer>>() {
@Override
public int compare(Map.Entry<String, Integer> o1, Map.Entry<String, Integer> o2) {
return o1.getValue() - o2.getValue();
}
});

展开全文
• 1、TreeMap默认顺序是按照map的key来顺序排序的。 2、自定义顺序：需要把treeMap转换成List，通过重写Comparator方法去重新定义顺序。 public class MyTreeMap { /** * @param args */ public static ...
• *我们都知道TreeMap是排序的，但是它是对key进行排序的，要对value进行排序，可以用下面这种方法 *大致的思路是把TreeMap的EntrySet转换成list，然后使用Collections.sor排序。代码： Map<String,Integer> ...
• package java20210327; import java.util.*; public class Main4601 { public static void main(String[] args) { ... map = new TreeMap<>(); map.put('c', 111); map.put('d', 555); map.put('b', 6
•  //比较的时候，传入的两个参数应该是map的两个key，根据上面传入的要比较的集合base，可以获取到key对应的value，然后按照value进行比较      public   int  compare(String a, String b) {    ...
• 比如ArrayList，TreeMap等。但是使用不同的排序工具，可能会遇到不同的问题。 2、案例分析 2.1 需求：根据HashMap中的数据，按照value排序。例如： /* 排序之前的结果： key:value = a:3 key:value = b:5 key...
• 使用比较器对Treemap按照value进行排序（value值只有是string类型时才适用）方式一public class MapSortDemo { public static void main(String[] args) { Map, String> map = new TreeMap, String>(); map.put(
• /** ... /**将TreeMap按照Value进行排序 最终结果词频高的在前*/ List<Map.Entry<String, Integer>> wordsList = new ArrayList<Map.Entry<String, Integer>>(wordsMa...
• 使用TreeMap可以对key 和Value进行排序Map是键值对的集合接口，它的实现类主要包括：HashMap,TreeMap,Hashtable以及LinkedHashMap等。** TreeMap：基于红黑树(Red-Black tree)的 NavigableMap 实现，该映射根据其键...
• 所以，TreeMap只能根据key来排序，是不能根据value来排序的（否则key来排序根本就不能形成TreeMap）。 要根据value值对TreeMap进行排序，大致的思路是把TreeMap的EntrySet转换成list，然后使用Collections.sor排序 ...
• TreeMap类containsValue()方法containsValue()方法在java.util包中可用。containsValue()方法用于检查此TreeMap是否为给定值元素(val_ele)关联了至少一个键元素。containsValue()方法是一种非静态方法，只能通过类...
• TreeMap 升序|降序排列import java.util.Comparator;import java.util.TreeMap;public class Main {public static void main(String[] args) {TreeMap map1 = new TreeMap(); //默认的TreeMap升序排列TreeMap map2= ...
• Java TreeMap containsValue()方法java.util.TreeMap.containsValue()如果Map将一个或多个key映射到指定值，则返回true。1 语法public boolean containsValue(Object value)2 参数value：这是要测试Map中是否存在的...
• 前段时间工作中用到TreeMap集合，好久没用过以至于忘了会get到null值，现在把这个Mark一下。 问题描述：本来TreeMap是用来**去重**并排序的。当我们因为需要**强制其存储重复键值**的时候，通过get去 获取对应的值...
• java.util.TreeMap.containsValue()方法用于检查TreeMap中的任何键是否正在映射特定值。它使用Value作为参数，如果该值由映射中的任何键映射，则返回True。用法:Tree_Map.containsValue(Object Value)参数：该方法仅...
• java treemap TreeMap类containsValue()方法 (TreeMap Class containsValue() method) containsValue() method is available in java.util package. containsValue()方法在java.util包中可用。 containsValue() ...
• Java-TreeMap对Key/Value自定排序 Key自定义排序： 实现Comparator接口： 1）重写接口Comparator中的compare方法 //实现接口：Comparator class MyComparator implements Comparator{ //自定义排序，对价格...
• Map<... selectedMap=new TreeMap<GUID, Integer>(); List<Entry<GUID, Integer>> list = new ArrayList<Entry<GUID, Integer>>(selectedMap.entrySet()); Co...
• TreeMap类Java TreeMap分别对key和value降序排列TreeMap默认按key进行升序排序，下面我们将对key和value进行降序排列。1.key进行降序排序Map map = new TreeMap(new Comparator(){public int compare(String obj1,...
• TreeMap 遍历public class Eee { public static void main(String[] args) { TreeMap&lt;String, Integer&gt; treeMap = new TreeMap&lt;&gt;(); treeMap.put("s", 2); treeMap....
• 今天在写Dijkstra's Algorithm用heap实现的过程中，遇到类似于使用TreeMap按照value进行排序的情况，即每个node对应一个当前最短路，将这些node按照最短路的距离排序，但是同时需要做到随时找到该点并作必要的操作。...

...