java8中map的meger方法的使用
java8中map有一个merge方法使用示例:
/**
* 打印出包含号码集的label的集合
*
* @param args
*/
public static void main(String[] args) {
Set<String> mdnSet1 = new HashSet<>();
Set<String> mdnSet2 = new HashSet<>();
Set<String> mdnSet3 = new HashSet<>();
mdnSet1.add("133");
mdnSet1.add("153");
mdnSet2.add("133");
mdnSet2.add("189");
mdnSet3.add("133");
mdnSet3.add("189"); // 133_LABELA:LABELB:LABELC;153_LABELA;189_LABELC:LABELB
Map<String, Set<String>> labels = new HashMap<>();
labels.put("LABELA", mdnSet1);
labels.put("LABELB", mdnSet2);
labels.put("LABELC", mdnSet3); // 将内容存到map中,号码为key,label为value
Map<String, String> mdnLabels = new ConcurrentHashMap<>();
for (Entry<String, Set<String>> entry : labels.entrySet()) {
Set<String> mdnList = entry.getValue();// mdns
String label = entry.getKey();// label
for (String mdn : mdnList) {
if (mdnLabels.get(mdn) == null) {// 首次放入手机号
mdnLabels.put(mdn, mdn + "_" + label);
} else {//其他
mdnLabels.merge(mdn, label, (value, newValue) -> value.concat(":" + newValue));//将label中的
}
}
} System.out.println(mdnLabels); }
java8中map的meger方法的使用的更多相关文章
- 一文带你认识Java8中接口的默认方法
Java8是Oracle于2014年3月发布的一个重要版本,其API在现存的接口上引入了非常多的新方法. 例如,Java8的List接口新增了sort方法.在Java8之前,则每个实现了List接口的 ...
- java8中对lamdba表达式方法参数传递时,方法重载之后的类型推断
java8中可以向方法传递一个lamdba表达式,今天看书关于类型推断碰到一个问题: 这个问题我实际操作了一下:得出结论 如果是只有一个方法的情况下,方法参数使用lamdba表达式的时候是不需要写类型 ...
- Java8中Map的遍历方式总结
在这篇文章中,我将对Map的遍历方式做一个对比和总结,将分别从JAVA8之前和JAVA8做一个遍历方式的对比,亲测可行. public class LambdaMap { private Map< ...
- jquery 中 $.map 的使用方法
$.map(data,function(item,index){return XXX}) 遍历data数组中的每个元素,并按照return中的计算方式 形成一个新的元素,放入返回的数组中 ,,], f ...
- java8中 map和flatmap的理解
假如我们有这样一个需求给定单词列表["Hello","World"],你想要返回列表["H","e","l&q ...
- String.join() --Java8中String类新增方法
序言 在看别人的代码时发现一个方法String.join(),因为之前没有见过所以比较好奇. 跟踪源码发现源码很给力,居然有用法示例,以下是源码: /** * Returns a new String ...
- js中map和filter方法,以及search方法
链接:https://blog.51cto.com/11871779/2126561 search方法: 介绍: search() 方法用于检索字符串中指定的子字符串,或检索与正则表达式相匹配的子字符 ...
- 4中map遍历的方法
public static void main(String[] args) { Map<String, String> map = new HashMap<String, Stri ...
- C语言 · C++中map的用法详解
转载自:http://blog.csdn.net/sunquana/article/details/12576729 一.定义 (1) map<string, int> Map ...
随机推荐
- tengine+tomcat配置
# 根据你服务器的cpu核数来确定此值 worker_processes 4; error_log logs/error.log crit; #error_log logs/error.log not ...
- IOS开发之网络编程开源类 Reachability应用
先看Reachability.h发现 #import <Foundation/Foundation.h> #import <SystemConfiguration/SystemCon ...
- maven的阿里镜像
偶然发现maven有了阿里镜像 vim ~/.m2/setting.xml <mirrors> <mirror> <id>alimaven</id> & ...
- Nginx安装、配置文档
Nginx介绍 nginx是一款轻量级的Web 服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器,并在一个BSD-like 协议下发行.由俄罗斯的程序设计师Igor Sysoev所开发 ...
- 通过Daffodil for VS使VS2010的IDE可以用VC6 VC7.1 VC9等编译器进行项目编译
本文内容中的部分资料和知识来源于网络,具体引用出处不明. VS的IDE从VC6到VS2010的变化可谓是天翻地覆,最新的VS2010有一个特性就是支持多显示器开发,这无疑为我们的开发带来很大的便利. ...
- Hibernate5.2关联关系之双向一对多(三)
Hibernate之双向一对多(三) 一.简介 本篇博文接着上一章的内容接着开展,代码也是 ...
- SqlBulkCopy
private static void DataTableToSQLServer( DataTable dt) { string connectionString = GetConnectionStr ...
- R语言-数据结构
1.向量 向量是用来存储数值型.字符型或逻辑性数据的一维数组,用函数c()创建向量 a <- c(1,2,5,6,4) b <- c("one","two&q ...
- C#中属性与字段的用法
//People.cs public class People { //字段 private string _name; //属性 作用:保护字段,对字段的取值和赋值进行限定,限制非法字段的摄入 pu ...
- CRM 启用或禁用自定义代码执行
启用自定义代码执行 1.打开 Windows PowerShell 命令窗口. 2.添加 Microsoft Dynamics 365 PowerShell 管理单元: Add-PSSnapin Mi ...