java处理集合工具
public static <K, V> Map<K, V> parseListToMap(Collection<V> list, Function<V, K> mapper) {
        if (list == null || list.size() == 0) {
            return null;
        }
        Map<K, V> map = new HashMap<>();
        for (V v : list) {
            map.put(mapper.apply(v), v);
        }
        return map;
    }
    public static <K, V> Map<K, List<V>> parseListToListMap(List<V> list, Function<V, K> mapper) {
        if (list == null || list.size() == 0) {
            return null;
        }
        Map<K, List<V>> map = new HashMap<>();
        for (V v : list) {
            if (map.containsKey(mapper.apply(v))) {
                map.get(mapper.apply(v)).add(v);
            }
            else {
                List<V> values = new ArrayList<>();
                values.add(v);
                map.put(mapper.apply(v), values);
            }
        }
        return map;
    }
    public static <K, V> Map<K, Integer> frequencyOfListElements(Collection<V> list, Function<V, K> mapper) {
        if (null == list || list.size() == 0) {
            return null;
        }
        Map<K, Integer> map = new HashMap<>();
        for (V v : list) {
            Integer count = map.get(mapper.apply(v));
            map.put(mapper.apply(v), (null == count) ? 1 : (count + 1));
        }
        return map;
    }
java处理集合工具的更多相关文章
- java之集合工具类Collections
		
Collections类简介 java.utils.Collections 是集合工具类,用来对集合进行操作.此类完全由在 collection 上进行操作或返回 collection 的静态方法组成 ...
 - java的集合工具类Collections
		
集合框架的工具类. Collections:集合框架的工具类.里面定义的都是静态方法. Collections和Collection有什么区别? Collection是集合框架中的一个顶层接口,它里面 ...
 - Java:集合工具类-Collections
		
Java.util.Collections 集合框架工具类Collections,其方法都是静态的,本身没有构造函数. 常见方法: static <T extends Comparable< ...
 - 集合工具类 - CollectionUtil.java
		
集合工具类,提供数组转LIST.数组转SET.合并集合.计算笛卡儿积等方法. 源码如下:(点击下载 - CollectionUtil.java.ArrayUtil.java.commons-lang ...
 - [Google Guava] 2.3-强大的集合工具类:java.util.Collections中未包含的集合工具
		
原文链接 译文链接 译者:沈义扬,校对:丁一 尚未完成: Queues, Tables工具类 任何对JDK集合框架有经验的程序员都熟悉和喜欢java.util.Collections包含的工具方法.G ...
 - java第十九天,Collections集合工具类的使用
		
Collections Java中集合都实现了Collection接口,那么针对集合一些特定的功能,有没有一个接口或类能够统一的集成一些集合必要的功能呢?当然能.它就是--Collections集合工 ...
 - Java自学第6期——Collection、Map、迭代器、泛型、可变参数、集合工具类、集合数据结构、Debug
		
集合:集合是java中提供的一种容器,可以用来存储多个数据. 集合和数组既然都是容器,它们有啥区别呢? 数组的长度是固定的.集合的长度是可变的. 数组中存储的是同一类型的元素,可以存储基本数据类型值. ...
 - 细说Java主流日志工具库
		
概述 在项目开发中,为了跟踪代码的运行情况,常常要使用日志来记录信息. 在Java世界,有很多的日志工具库来实现日志功能,避免了我们重复造轮子. 我们先来逐一了解一下主流日志工具. java.util ...
 - Java的各种工具类
		
下面是java的各种工具,包括获取时间和时间比较,检验集合和字符串是否为空和长度大小等等 1 import java.io.BufferedReader; import java.io.File; i ...
 - Java XML解析工具 dom4j介绍及使用实例
		
Java XML解析工具 dom4j介绍及使用实例 dom4j介绍 dom4j的项目地址:http://sourceforge.net/projects/dom4j/?source=directory ...
 
随机推荐
- CMake制作我的第一个自己写的项目
			
首先写好CMakeList.txt ,然后把目标文件(.off格式)和 源文件(.cpp) 放在同一目录下吗,对该目录进行Cmake 生成build文件,打开.sln 文件,运行ALL_BUILD , ...
 - vim的visual模式和列编辑
			
有三种方式进入visual模式: 1> 在普通模式下输入v(小写),底部提示信息为VISUAL,编辑粒度为字符 通过方向键或者HJKL调整选择的字符范围. 输入d,删除选中字符: 输入y,复制当 ...
 - 【帆吖】Java学习零基础17
			
Java方法 1 package method; 2 3 public class Demo1 { 4 //main方法 5 public static void main(String[] args ...
 - js指南
			
1.for /in: 与for/of相比,可迭代对象不同,in后面可以是任意对象.数组.字符串.集合和映射可迭代. object.keys() object.values() object.e ...
 - Jmeter--请求结果写入文件并生成报告
			
一.数据写入文件 Jmeter中监听器控件中,都可以将"所有数据写入一个文件",且文件形式有:xml\jtl\csv 在需要写入的监听器下点击"浏览"按钮,选择 ...
 - ArcEngine(平板电脑墨迹错误代码。多次调用 RtpEnabled (异常来自 HRESULT:0x80040239))问题未有效解决
			
测试数据库中的要素无法执行ITopologicOperater接口下的方法,错误如图 暂记,错误未解决 tip: 1.随便移动一个节点 也不报错/ 2.手动按照他的节点画一个也不报错 3.bufer参 ...
 - JWT用户认证体系
			
依赖 <dependency> <groupId>com.auth0</groupId> <artifactId>java-jwt</artifa ...
 - ovs-dpdk:revalidator源码解析
			
revalidator是做什么的?需要知道哪些东西? 有关于revalidator需要弄明白的是以下三个问题: 通过ovs-vsctl list open_vs可以看到other_config里面有两 ...
 - 【读书笔记】排列研究-置换角度(分解为Products Of Cycles)   含GroupExploer使用
			
upd 2020-08-06 23:11完成了最初稿 目录 定义 开胃菜 entrée 群论角度 应用:几何变换 当然要从第一类斯特林数的角度来考虑一下 一个排列的type定义 排旗公式 应用-共轭排 ...
 - Qt连接不上Linux服务器?
			
目录 1. Qt连接代码 2. 问题分析(按照顺序排除) 2.1 服务器IP是否能被Ping通? 2.2 客户端中的服务器IP和Port是否填写正确? 2.3 Linux的代码处理是否正确? 2.4 ...