传入一个Map<String,Long> 返回它按value排序后的结果
//传入一个Map<String,Long> 返回它按value排序后的结果 sort为正序还是倒序(-1倒序),size为要几条数据
private static Map<String, Long> sortMapByValues(Map<String, Long> aMap, int sort, int size) { Set<Map.Entry<String, Long>> mapEntries = aMap.entrySet(); List<Map.Entry<String, Long>> aList = new LinkedList<Map.Entry<String, Long>>(mapEntries); Collections.sort(aList, new Comparator<Map.Entry<String, Long>>() { @Override
public int compare(Map.Entry<String, Long> ele1,
Map.Entry<String, Long> ele2) {
if (sort < 0) {
return ele2.getValue().compareTo(ele1.getValue());
}
return ele1.getValue().compareTo(ele2.getValue());
}
});
// Storing the list into Linked HashMap to preserve the order of insertion.
Map<String, Long> aMap2 = new LinkedHashMap<String, Long>();
for (Map.Entry<String, Long> entry : aList) {
aMap2.put(entry.getKey(), entry.getValue());
if (aMap2.size() == size) {
break;
}
}
return aMap2;
}
传入一个Map<String,Long> 返回它按value排序后的结果的更多相关文章
- java中对List<Map<String,Object>>中的中文汉字排序
import java.text.Collator;import java.util.ArrayList;import java.util.Collections;import java.util.C ...
- C语言中函数中传入一个数组,并且返回一个数组
一.C语言可以很容易将一个数组传递给一个自定义函数,格式如下: main() { adb(float a[],int n); } float adb(float a[],int n) { …… ret ...
- Map.putAll方法——追加另一个Map对象到当前Map集合(转)
该方法用来追加另一个Map对象到当前Map集合对象,它会把另一个Map集合对象中的所有内容添加到当前Map集合对象. 语法 putAll(Map<? extends K,? extends V ...
- Map.putAll方法——追加另一个Map对象到当前Map集合
转: Map.putAll方法——追加另一个Map对象到当前Map集合(转) 该方法用来追加另一个Map对象到当前Map集合对象,它会把另一个Map集合对象中的所有内容添加到当前Map集合对象. 语法 ...
- Java中 如何把Object类型强转成Map<String, String>类型
首先你需要保证要转换的Object的实际类型是Map<String, String> 假设Object变量名为obj,强制转换(Map<String, String>)obj ...
- PAT 1039 Course List for Student (25分) 使用map<string, vector<int>>
题目 Zhejiang University has 40000 students and provides 2500 courses. Now given the student name list ...
- 对List<Map<String, Object>>集合排序
private void mySort(List<Map<String, Object>> list) { //list为待排序的集合,按SEQ字段排序 Comparator& ...
- JAVA传入一个字符串,返回一个字符串中的大写字母
/** * * @param 传入一个字符串 * @return 返回一个字符串中的大写字母 */ private static String str ...
- mybatis 获得一个map的返回集合
在使用mybatis 查询结果集,有时会有需求返回一个map比如表 id username 1 name1 2 name2 3 name3 希望的查询结果是一个map 并且以id为key 表为实体 ...
随机推荐
- JS For
JS For 循环可以将代码块执行指定的次数. JavaScript 循环 document.write(cars[0] + "<br>"); document.wri ...
- mysql安装及简单操作
sudo grep mysql_root_passwd /root/env.txt (现在很多人开始使用云主机,登录云主机之后可以根据该命令查看阿里云数据库密码) mysql 安装:rpm+retha ...
- GitHub最强技术面试手册:Tech Interview Handbook
摘要: 求职还是需要认真准备的. 原文:超实用技术面试手册,从工作申请.面试考题再到优势谈判,GitHub获30000星 作者:量子位 技术人员求职面试,单刷leetcode上的大厂题库可能还不够. ...
- pymysql连接
import pymysql conn=pymysql.connect(host='localhost',user='root',password='123',db='sg',charset='utf ...
- HTML技巧篇:实现元素水平与垂直居中的几种方式
如何使用html+css实现元素的水平与垂直居中效果,这也是我们网页在编码制作中会经常用到的问题. 1)单行文本的居中 主要实现css代码: 水平居中:text-align:center;垂直居中:l ...
- Oracle 统计表空间和对象历史增长量
最近7天内 每天(某个)表空间的增长量 col TS_NAME for a15 SELECT a.snap_id, a.rtime, c.tablespace_name ts_name, round( ...
- Undo 相关的等待事件和已知问题 (Doc ID 1575701.1)
Undo Related Wait Events & Known Issues (Doc ID 1575701.1) APPLIES TO: Oracle Database - Enterpr ...
- CUDA 编程相关;tensorflow GPU 编程;关键知识点记录;CUDA 编译过程;NVCC
本文章主要是记录,cuda 编程过程中遇到的相关概念,名字解释和问题:主要是是用来备忘: cuda PTX :并行线程执行(Parallel Thread eXecution,PTX)代码是编译后的G ...
- AcWing 34. 链表中环的入口结点
习题地址 https://www.acwing.com/problem/content/description/86/ 题目描述给定一个链表,若其中包含环,则输出环的入口节点. 若其中不包含环,则输出 ...
- Rust v1.39发布 - 这个编程语言真不一般!
https://zhuanlan.zhihu.com/p/90612241 今天(2019-11-07)Rust终于发布了期待已久的v1.39版本,增加了重量级的async/await关键字支持.Ru ...