博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Guava学习笔记-简化List分组成Map<String,List>的实现
阅读量:5886 次
发布时间:2019-06-19

本文共 893 字,大约阅读时间需要 2 分钟。

hot3.png

###问题描述

将一个List按照某种条件分组
[1, 2, 3, 4]->{OddNumber=[1, 3], EvenNumber=[2, 4]}

public static String getKey(Integer input) {    return input % 2 == 0 ? "EvenNumber" : "OddNumber";}

###原来

Map
> group = Maps.newHashMap();for (Integer integer : source) { String key = getKey(integer); if (!group.containsKey(key)) { group.put(key, Lists.
newArrayList()); } group.get(key).add(integer);}

###使用Guava

Map
> group = Multimaps.asMap( Multimaps.index(source, new Function
() { public String apply(Integer input) { return getKey(input); } }));

Map
> group = Multimaps.index(source, new Function
() { public String apply(Integer input) { return getKey(input); } }).asMap();

只需要关注key时怎么实现的就行

转载于:https://my.oschina.net/u/565871/blog/608432

你可能感兴趣的文章
Oracle_052_lesson_p8
查看>>
基于WeiPHP的微信批量文本自定义回复的快捷实现
查看>>
ps动态文字图片
查看>>
android之自定义ViewGroup和自动换行的布局的实现
查看>>
系统化思维导论读书笔记
查看>>
storm使用问题随笔
查看>>
我的友情链接
查看>>
Office2007另存为显示“正在初始化要显示的根文件夹”解决方法
查看>>
我的友情链接
查看>>
Win8大百科06期:硬件需求/版本知多少?
查看>>
raid
查看>>
我的友情链接
查看>>
hub-spoke Dynamic site-to-site peer and ××× Cliens
查看>>
十个1分钟换来健康,搞IT必看
查看>>
学好Java的10个建议
查看>>
mysql中的数据导入导出
查看>>
Java脚本:去除字符串中空值
查看>>
Open edX课程数据的存储方式
查看>>
将bean中的数据复制到map中
查看>>
https方式使用git@osc设置密码的方式
查看>>