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. 超赞的Linux软件分享(持续更新)

    开发 Android studio - Android 的官方 IDE:Android Studio 提供在各种类型的安卓设备上构建应用最快的工具. Aptana - Aptana Studio 利用 ...

  2. POJ 3111 K Best ( 二分 )

    题意 : 给出 N 个物品的价值和重量,然后要求选出 K 个物品使得选出来物品的单位重量价值最大,最后输出被选物品的编号. 分析 :  很容易去想先算出每个物品的单位价值然后升序排序取前 K 个,但是 ...

  3. Laya 爆改Laya IDE和Laya引擎使其支持2D粒子爆发模式

    Laya 爆改Laya IDE和Laya引擎使其支持2D粒子爆发模式 @author ixenos 2019-11-01 19:47:26 1. 修改IDE的功能需要深入到/resources/app ...

  4. instanceof用来判断啥?

    java中的instanceof运算符是用来在运行时指出对象是否是特定类的一个实例.instanceof通过返回一个布尔值来指出,这个对象是否是这个特定类或者是它的子类的一个实例.

  5. angular 发送ajax

    在使用angular发送ajax的时候get和post一样的,就是method改一下. ajax的js: <script> var app = angular.module('emialV ...

  6. mui初级入门教程(四)— 再谈webview,从小白变“大神”!

    文章来源:小青年原创发布时间:2016-06-05关键词:mui,html5+,webview转载需标注本文原始地址: http://zhaomenghuan.github.io/#!/blog/20 ...

  7. leetcode-mid-array-73 set matrix zeros

    mycode 空间复杂度 m+n 思路:用set把为0元素所在行.列记录下来 注意:注释的方法更快 class Solution(object): def setZeroes(self, matrix ...

  8. Linux内核调试方法总结之反汇编

    Linux反汇编调试方法 Linux内核模块或者应用程序经常因为各种各样的原因而崩溃,一般情况下都会打印函数调用栈信息,那么,这种情况下,我们怎么去定位问题呢?本文档介绍了一种反汇编的方法辅助定位此类 ...

  9. xfs格式化、ext4格式化并指定inode区别

    [root@b ~]# mkfs.ext4 -N 90000000 /dev/sdb3 首先是mkfs.xfs的,重点是这几个:     -i size=512  : 默认的值是256KB,这里的设置 ...

  10. 主流架构 : MVP

    1 背景 MVC 平时开发APP时会发现,activity职责非常重.以MVC角度来看: M:model数据操作层(网络请求,耗时操作,数据存取,其他逻辑操作) V:view,指xml布局文件,其实并 ...