【第22期】观点:IT 行业加班,到底有没有价值?

对TreeMap按照value进行排序

转载 2016年08月31日 13:56:58
  1. public class Testing {  
  2.   
  3.     public static void main(String[] args) {  
  4.   
  5.         HashMap<String,Long> map = new HashMap<String,Long>();  
  6.         ValueComparator bvc =  new ValueComparator(map);  
  7.         TreeMap<String,Long> sorted_map = new TreeMap<String,Long>(bvc);  
  8.   
  9.         map.put("A",99);  
  10.         map.put("B",67);  
  11.         map.put("C",67);  
  12.         map.put("D",67);  
  13.   
  14.         System.out.println("unsorted map: "+map);  
  15.   
  16.         sorted_map.putAll(map);  
  17.   
  18.         System.out.println("results: "+sorted_map);  
  19.     }  
  20. }  
  21.   
  22. class ValueComparator implements Comparator<String> {  
  23.   
  24.     Map<String, Long> base;  
  25.     //这里需要将要比较的map集合传进来
  26.     public ValueComparator(Map<String, Long> base) {  
  27.         this.base = base;  
  28.     }  
  29.   
  30.     // Note: this comparator imposes orderings that are inconsistent with equals.    
  31.     //比较的时候,传入的两个参数应该是map的两个key,根据上面传入的要比较的集合base,可以获取到key对应的value,然后按照value进行比较   
  32.     public int compare(String a, String b) {  
  33.         if (base.get(a) >= base.get(b)) {  
  34.             return -1;  
  35.         } else {  
  36.             return 1;  
  37.         } // returning 0 would merge keys  
  38.     }  
  39. }  
举报

相关文章推荐

Java TreeMap 升序|降序排列

import java.util.Comparator; import java.util.TreeMap; public class Main { public static void main(...

TreeMap的排序及比较器问题

本文介绍了Map的按值排序以及由此引出的比较器等的问题,深入探讨了Comparator及Comparable两个比较器的不同之处,希望给他人以帮助。

java中如何使用TreeMap进行键值对排序

TreeMap是可以保存键值对的一种方式,它的特殊之处是它可以自动以键进行升序排序。 下面举例说明它的用法。 首先定义一个实体类Person,有name和age属性: public clas...

TreeMap按照value进行排序

TreeMap底层是根据红黑树的数据结构构建的,默认是根据key的自然排序来组织(比如integer的大小,String的字典排序)。所以,TreeMap只能根据key来排序,是不能根据value来排...

Java Map按键排序和按值排序

Map排序的方式有很多种,这里记录下自己总结的两种比较常用的方式:按键排序(sort by key), 按值排序(sort by value)。 按键排序(sort by key) jdk...
  • warhin
  • warhin
  • 2011-12-25 16:31
  • 72389

TreeMap按value值进行排序

import java.util.ArrayList;import java.util.Collections;import java.util.Comparator;import java.util...

Java<TreeMap按key排序与按照value排序>

TreeMap默认按照key递增排序 public class Main { public static void main(String[] args) { TreeMap t...

HashMap与TreeMap按照key和value排序

结合代码讲解HashMap与TreeMap按照key和value排序

JAVA HashMap、TreeMap根据value值排序

package com.dooioo.test; import java.util.ArrayList; import java.util.Collections; import java.util.Comparator; import java.util.HashMap; import java.util.Map; import java.util.Map.Entry; public class Sort { public static void main(String[] args) { HashMap&lt;Strin
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)