Java 8中的Map类

Java 8中Map新增了不少新方法,下面将演示常见方法的典型应用。

1 代码示例

import java.util.*;

public class MapTest2
{
	public static void main(String[] args)
	{
		Map map = new HashMap();
		// 成对放入多个key-value对
		map.put("Java学习" , 109);
		map.put("Linux操作指南" , 99);
		map.put("电脑黑客攻防" , 79);
		// 尝试替换key为"疯狂XML讲义"的value,由于原Map中没有对应的key,
		// 因此对Map没有改变,不会添加新的key-value对
		map.replace("疯狂XML讲义" , 66);
		System.out.println(map);
		// 使用原value与参数计算出来的结果覆盖原有的value
		map.merge("Linux操作指南" , 10 ,
			(oldVal , param) -> (Integer)oldVal + (Integer)param);
		System.out.println(map); // "Linux操作指南"的value增大了10
		// 当key为"Java"对应的value为null(或不存在时),使用计算的结果作为新value
		map.computeIfAbsent("Java" , (key)->((String)key).length());
		System.out.println(map); // map中添加了 Java=4 这组key-value对
		// 当key为"Java"对应的value存在时,使用计算的结果作为新value
		map.computeIfPresent("Java",
			(key , value) -> (Integer)((String)key).length() * (Integer)value);
		System.out.println(map); // map中 Java=4 变成 Java=16
	}
}

2 运行结果

{Java学习=109, Linux操作指南=99, 电脑黑客攻防=79}
{Java学习=109, Linux操作指南=109, 电脑黑客攻防=79}
{Java=4, Java学习=109, Linux操作指南=109, 电脑黑客攻防=79}
{Java=16, Java学习=109, Linux操作指南=109, 电脑黑客攻防=79}

3 代码分析

本程序演示了Java 8中新增的4个方法,代码中已详细注释了这4个方法的应用。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值