泛型方法 public static <T> void display(T t)

public class Test01 implements Comparator<Long>{

Map<Long,Double> base;

public Test01(Map<Long,Double> base){

this.base = base;

}

@Override

public int compare(Long a,Long b) {

if(base.get(a).doubleValue() >= base.get(b).doubleValue()){

return -1;

}else{

return 1;

}

}

//泛型方法 public static <T> void display(T t)

public static <K,V extends Comparable<V>> Map<K,V> sortByValues(final Map<K,V> map){

Comparator<K> valueComparator = new Comparator<K>(){

public int compare(K k1,K k2){

int compare = map.get(k2).compareTo(map.get(k1));

if(compare == 0)

return 1;

else

return compare;

}

};

Map<K,V> sortedByValues = new TreeMap<K,V>(valueComparator);

sortedByValues.putAll(map);

return sortedByValues;

}

public static void main(String args[]){

HashMap<Long,Double> map = new HashMap<Long,Double>();

map.put(1L, 99.5);

map.put(2L, 67.2);

map.put(3L, 67.5);

map.put(4L, 67.6);

Test01 bvc = new Test01(map);

TreeMap<Long,Double> sorted_map = new TreeMap<Long,Double>(bvc);

System.out.println("unsorted map:"+map);

sorted_map.putAll(map);

System.out.println("results:" + sorted_map);

Map<Long,Double> sorted_map2 = sortByValues(map);

System.out.println("results2:" + sorted_map2);

}

}

转载于:https://blog.51cto.com/xiatianyangwang/1425410

泛型方法,java map按照value值来比较大小并且返回最终结果相关推荐

  1. java map 多个值_java 一个函数EnumMap返回多个值

    在开发过程中,经常会有这种情况,就是一个函数需要返回多个值,这是一个问题!! 网上这个问题的解决方法: 1.使用map返回值:这个方法问题是,你并不知道如何返回值的key是什么,只能通过doc或者通过 ...

  2. java map 遍历取值_Map 遍历取值及jstl的取值

    学习了:http://blog.csdn.net/yanjiaye520/article/details/17354239 1.Java map的便利取值 Java代码 收藏代码 Map map = ...

  3. java map随机取值_HashMap随机取值和迭代器取值的对比

    一共四中方法,前两种是迭代器取值,后两种是随机取值,循环了5000万次,时间分别为:迭代器读取的速度大约是随机读取的速度的1.5倍,数据量越大,差距越明显. 另外,插入是读取的100倍左右的时间(这个 ...

  4. java map 允许null值,Map取值方法,其中取得多种值,避免null值转换

    ~~~ import java.math.BigDecimal; import java.util.Date; import java.util.Map; /** * * Map取值方法,其中取得多种 ...

  5. Java Map按value值的大小进行排序

    Map排序工具类如下: import java.util.HashMap; import java.util.LinkedHashMap; import java.util.List; import ...

  6. java map 随机取值_随机获取一个集合(List, Set)中的元素,随机获取一个Map中的key或value...

    利用Java提供的Random类.从List或Set中随机取出一个元素,从Map中随机获取一个key或value. 因为Set没有提供get(int index)方法,仅仅能先获取一个随机数后.利用一 ...

  7. java用循环给map里面存值_Java中如何遍历Map对象的4种方法

    方法一 在for-each循环中使用entries来遍历 这是最常见的并且在大多数情况下也是最可取的遍历方式.在键值都需要时使用. 1 Map map = new HashMap();2 3 for ...

  8. java map 值排序_使用Java8 Stream API对Map类型按照键或值进行排序

    在这篇文章中,您将学习如何使用Java对Map按照键或值进行排序.前几日有位朋友面试遇到了这个问题,看似很简单的问题,但是如果不仔细研究一下也是很容易让人懵圈的面试题.所以我决定写这样一篇文章.在Ja ...

  9. java获取map遍历,Map获取键值,Map的几种遍历方法总结(推荐)

    Map以按键/数值对的形式存储数据,和数组非常相似,在数组中存在的索引,它们本身也是对象. Map的接口 Map---实现Map Map.Entry--Map的内部类,描述Map中的按键/数值对. S ...

  10. Java map按照值降序排列

    1)Java map按照值降序排列 思路是转成 list,然后再写入能保证顺序的 LinkedHashMap,普通的 HashMap和 TreeMap等不能保证顺序. /*** 降序排列 map*/p ...

最新文章

  1. Guava 中的 Stopwatch 是个什么鬼?
  2. 啧啧,这种程序员……| 每日趣闻
  3. 安卓系统底层C语言算法之测试参数是几个long型的算法
  4. 商汤组了「最强大脑」局,正儿八经解释为啥搞起电竞AI
  5. PHP ERROR_PHP 处理错误函数
  6. python中knn_如何在python中从头开始构建knn
  7. 魔兽争霸3地图(WarIII Maps):三国猛兽传
  8. 前端笔记-利用thymeleaf隐藏显示input及label
  9. 48.检测对象是否为空
  10. C++之命名空间探究
  11. /etc/fstab 官方文档
  12. 二分查找(java代码实现)
  13. 使用虚拟机镜像文件导入部署openGauss
  14. 11个最佳Ionic应用程序模板
  15. c++如何实现以任意数为底的对数(底数合法)log()
  16. OK6410之uboot移植
  17. w7系统计算机更改用户名,win7系统用户名不能修改的解决方法
  18. 小猿圈解读Go语言的前景
  19. 【html5期末大作业】基于HTML仿QQ音乐官网网站
  20. openstack下创建windows虚机出现do_hivex_close

热门文章

  1. paip. JAVA快速开发IDE与JSF技术
  2. 2019券业IT投入突破200亿!国君华泰中信均超10亿,新评价标准下东财、平安、东方、安信、中泰加分最多
  3. (转)星巴克其实是靠大数据盈利的!
  4. 深度复盘 | 蚂蚁集团万级规模 k8s 集群基建之路
  5. 如何做到数百万台车联网设备同时在线 0 故障
  6. 新兴IT企业特斯拉(九)——私有化风波
  7. 瓜子二手车:急招IoT架构师,相当阿里P9
  8. 阿里云-高性能计算招聘
  9. 【信号检测】基于matlab双稳态随机共振的参数寻优算法【含Matlab源码 1700期】
  10. 【优化算法】改进型的LMS算法-NLMS算法【含Matlab源码 631期】