map集合中取出分类优先级最高的类别名称
- import java.util.Arrays;
- import java.util.Collection;
- import java.util.HashMap;
- import java.util.Map;
- import java.util.Map.Entry;
- /*
- * 取出分类优先级最高的类别名称
- * 思路:
- * 对于map集合中的key-value对,统计value值出现的频数,
- * 将value-频数写入map集合,对频数排序,计算出最高的频数
- * 输出最高频数对应得key值。
- */
- public class MapTest {
- public static void main(String[] args) {
- //创建map集合
- Map<String, String> map = new HashMap<>();
- map.put("Prosper", "网贷");
- map.put("聚爱财", "网贷");
- map.put("爱财", "网贷");
- map.put("美国", "政经");
- map.put("印度", "政经");
- map.put("度", "政经");
- map.put("比特时代", "区块链");
- map.put("火币资讯", "区块链");
- map.put("BTC123", "区块链");
- map.put("123", "区块链");
- map.put("罚单", "监管");
- map.put("捷信", "大公司");
- map.put("信", "大公司");
- map.put("众筹", "众筹");
- map.put("sefd", "众筹");
- map.put("er", "政经");
- //计算value出现的频数并写入map集合(res)
- Map<String, Integer> res = new HashMap<>();
- for(Entry<String, String> entry : map.entrySet()){
- if(res.containsKey(entry.getValue())){
- res.put(entry.getValue(), res.get(entry.getValue()) + 1);
- }else{
- res.put(entry.getValue(), 1);
- }
- }
- System.out.println("res:" + res);
- /*
- * res:{区块链=4, 众筹=1, 网贷=3, 大公司=1, 政经=3, 监管=1}
- */
- //对res集合中的key-value对进行排序,选出最高频数
- if(res != null){
- Collection<Integer> c = res.values();
- Object[] obj = c.toArray();
- Arrays.sort(obj);
- Object i = obj[obj.length-1];
- //Object ii = obj[obj.length-2];
- System.out.println("最大的value值:" + i);
- //System.out.println(ii);
- //System.out.println(i);
- //res.put("maxvalue", (Integer)i);
- //取出res中最大的频数对应的key(即就是取出)
- String key = null;
- for(String getkey : res.keySet()){
- if(res.get(getkey).equals(i)){
- key = getkey;
- }
- }
- System.out.println("最大的value对应的key:" + key);
- }
- }
- }
map集合中取出分类优先级最高的类别名称的更多相关文章
- Map集合中value()方法与keySet()、entrySet()区别
http://blog.csdn.net/liu826710/article/details/9001254 在Map集合中 values():方法是获取集合中的所有的值----没有键,没有对应关系, ...
- map集合中value()、keySet()、entrySet()区别
在Map集合中 values():方法是获取集合中的所有的值----没有键,没有对应关系, KeySet():将Map中所有的键存入到set集合中.因为set具备迭代器.所有可以迭代方式取出所有的键, ...
- Map集合中value()方法与keySet()、entrySet()区别 《转》
在Map集合中 values():方法是获取集合中的所有的值----没有键,没有对应关系, KeySet(): 将Map中所有的键存入到set集合中.因为set具备迭代器.所有可以迭代方式取出所有的键 ...
- map集合修改其中元素 去除Map集合中所有具有相同值的元素 Properties长久保存的流操作 两种用map记录单词或字母个数的方法
package com.swift.lianxi; import java.util.HashMap; import java.util.Iterator; import java.util.Map; ...
- Java分享笔记:使用entrySet方法获取Map集合中的元素
/*--------------------------------- 使用entrySet方法取出Map集合中的元素: ....该方法是将Map集合中key与value的关系存入到了Set集合中,这 ...
- java8之list集合中取出某一属性的方法
上代码 List<User> list = new ArrayList<User>(); User user1 = new User("第一位"," ...
- Map集合中的方法
Map集合中的方法: values() 方法 : 获取集合中的所有的值----没有键,没有对应关系, KeySet() 方法: 将Map中所有的键存入到set集合中.因为set具备迭代器.所有可以迭代 ...
- c#---部分;把数组或者结构体存入集合里,然后再从集合中取出之后,输出;foreach既可以用到提取数组重点额数据,也可以提取集合中的数据(前提是集合中的元素是相同数据类型)
1.输入班级人数,统计每个人的姓名,性别,年龄:集合与数组 //Console.Write("请输入班级人数:"); //int a = int.Parse(Console.Rea ...
- PHP的排列组合问题 分别从每一个集合中取出一个元素进行组合,问有多少种组合?
首先说明这是一个数学的排列组合问题C(m,n) = m!/(n!*(m-n)!) 比如:有集合('粉色','红色','蓝色','黑色'),('38码','39码','40码'),('大号','中号') ...
随机推荐
- [HG]AK 题解
前言 什么鬼畜玩意,扶我起来,我要用__int128,这辈子都不珂能用龟速乘的... 真香. 题解 我们知道这个模数是个神奇的东西 \(2305843008676823040 = 2^{29} \ti ...
- 如何理解重载与重写——Overload vs Override/Overwrite
重载: 在同一个类中,拥有类似功能的同名方法之间的关系叫做重载. 重载的条件:1.具有相同方法名和类似功能: 2.参数的类型或者个数不同: 3.与返回值无关: 重写: 在子父类的继承关系中,子类继承父 ...
- UE4联网游戏中让不同的客户端生成不同的Pawn类型
效果描述 一个服务器,两个客户端,让他们连接后分别生成不同的Pawn,并且在不同的位置生成. 意义 这是个项目需求,但是我发现如果能够彻底理解并制作出这个功能,会对虚幻4内置的网络功能以及一些重要的G ...
- es之java插入优化(批量插入)
插入文档操作的一种优化,因为每次插入单条文档,都会向es中发送请求.然后es执行在返回结果: 如果有大批量的文档数据需要插入,这个时候单挑插入操作显然是不合理的: 之前学习的命令行批量执行方式: PO ...
- 笔记本连接树莓派3b(不需要屏幕)
一.网线直连 工具:笔记本,网线,树莓派 软件:putty 过程: 将系统烧录进SD卡后,在root里添加一个名字为“ssh”的空白文件(不需后缀名)来开启ssh服务,SD卡里的cmdline.txt ...
- 深入探究JVM(2) - 探秘Metaspace
Java 8彻底将永久代移除出了HotSpot JVM,将其原有的数据迁移至Java Heap或Metaspace.这一篇文章我们来总结一下Metaspace(元空间)的特性.如有错误,敬请指出,谢谢 ...
- cenos 7 中firewalld开放服务端口
转载 CentOS 7 为firewalld添加开放端口及相关资料 1.运行.停止.禁用firewalld 启动:# systemctl start firewalld 查看状态:# syste ...
- 家用路由器网络设置DMZ区
2分钟看懂DMZ区 装载 原文链接 最近看到一个名词“DMZ区”,一直充满疑问,今天对其进行了查询,理解如下: 1.DMZ是什么? 英文全名“Demilitarized Zone”,中文含义是“隔离区 ...
- 【洛谷P1036 选数】
这个题显然用到了深搜的内容 让我们跟着代码找思路 #include<bits/stdc++.h>//万能头 ],ans; inline bool prime(int n)//最简单的判定素 ...
- django小知识
def __str__: return self.name 在显示的时候,将原来显示的额object对象,显示成这个类的名字