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集合中取出分类优先级最高的类别名称的更多相关文章

  1. Map集合中value()方法与keySet()、entrySet()区别

    http://blog.csdn.net/liu826710/article/details/9001254 在Map集合中 values():方法是获取集合中的所有的值----没有键,没有对应关系, ...

  2. map集合中value()、keySet()、entrySet()区别

    在Map集合中 values():方法是获取集合中的所有的值----没有键,没有对应关系, KeySet():将Map中所有的键存入到set集合中.因为set具备迭代器.所有可以迭代方式取出所有的键, ...

  3. Map集合中value()方法与keySet()、entrySet()区别 《转》

    在Map集合中 values():方法是获取集合中的所有的值----没有键,没有对应关系, KeySet(): 将Map中所有的键存入到set集合中.因为set具备迭代器.所有可以迭代方式取出所有的键 ...

  4. map集合修改其中元素 去除Map集合中所有具有相同值的元素 Properties长久保存的流操作 两种用map记录单词或字母个数的方法

    package com.swift.lianxi; import java.util.HashMap; import java.util.Iterator; import java.util.Map; ...

  5. Java分享笔记:使用entrySet方法获取Map集合中的元素

    /*--------------------------------- 使用entrySet方法取出Map集合中的元素: ....该方法是将Map集合中key与value的关系存入到了Set集合中,这 ...

  6. java8之list集合中取出某一属性的方法

    上代码 List<User> list = new ArrayList<User>(); User user1 = new User("第一位"," ...

  7. Map集合中的方法

    Map集合中的方法: values() 方法 : 获取集合中的所有的值----没有键,没有对应关系, KeySet() 方法: 将Map中所有的键存入到set集合中.因为set具备迭代器.所有可以迭代 ...

  8. c#---部分;把数组或者结构体存入集合里,然后再从集合中取出之后,输出;foreach既可以用到提取数组重点额数据,也可以提取集合中的数据(前提是集合中的元素是相同数据类型)

    1.输入班级人数,统计每个人的姓名,性别,年龄:集合与数组 //Console.Write("请输入班级人数:"); //int a = int.Parse(Console.Rea ...

  9. PHP的排列组合问题 分别从每一个集合中取出一个元素进行组合,问有多少种组合?

    首先说明这是一个数学的排列组合问题C(m,n) = m!/(n!*(m-n)!) 比如:有集合('粉色','红色','蓝色','黑色'),('38码','39码','40码'),('大号','中号') ...

随机推荐

  1. .net api 和java平台对接技术总结

    这两天 一直和京东对接接口,我们用.net api 提供接口,对方用java调用,本来没什么问题,但是对方对数据安全要求特别严,要验签,于是噩梦开始了. 1.在传输的时候,约定传输格式: HttpWe ...

  2. 运行job检验单元测试覆盖率

    http://ns.jenkins.baidu.com/user/anyixing/my-views/view/Map_ut/job/poi-zhunru/ 1在http://ns.jenkins.b ...

  3. Kaggle 房价预测问题参考资料

    作者的 Kaggle 主页:https://www.kaggle.com/pavansanagapati Tutorial - Housing Prices Model Prediction http ...

  4. (转)SSL工作原理

    转:https://www.cnblogs.com/bhlsheji/p/4586597.html 挑    希望:SSL使用数据加密.身份验证和消息完整性验证机制,基于TCP和其他的应用层协议提供可 ...

  5. docker 提高效率 network-bridging 桥接

    安装的时间顺序 bit3 192.168.107.128 wredis 192.168.107.129 wmysql 192.168.107.130 wslave 192.168.107.131 w ...

  6. malloc(50) 内存泄露 内存溢出 memory leak会最终会导致out of memory

    https://en.wikipedia.org/wiki/Memory_leak In computer science, a memory leak is a type of resource l ...

  7. 豆瓣镜像安装python库

  8. IK词库扩展

    先写个标题,慢慢更新 默认的词库就算最小细粒度分词,很多名词也不会单字分词 比如:阿迪达斯,在IK是一个词,搜索每个字的单字关键词是无结果的,必须搜索阿迪达斯才有结果 所以我们需要扩展词库 IK官方教 ...

  9. 类Vector

    /* * Vector的特有功能 * * Vector出现较早,比集合更早出现 * * 1:添加功能 * public void addElement(Object obj);//用add()替代 * ...

  10. 4 cdh 5.12 centos 6.10三节点安装

    4 cdh 5.12  centos 6.10 三节点安装 [root@hadoop1 opt]# cat /etc/redhat-release CentOS release 6.10 (Final ...