StreamAPI和λ表达式在Map集合中的妙用

StreamAPI和λ表达式在Map集合中的妙用

最近学习了StreamAPI、λ表达式,它们在Map集合中的应用真的是十分方便(排序、筛选、收集、遍历等),下面分享一个例子:

代码:

import java.util.HashMap;
import java.util.Map;
import java.util.stream.Collectors;

public class TestMap {

	public static void main(String[] args) {
		Map<String,Object> map = new HashMap<>();
		map.put("html", "HyperText Markup Language");
		map.put("css", "Cascding Style Sheets");
		map.put("js", "JavaScript");
		map.put("bs", "Bootstrap");
		map.put("ssh", "Spring Struts2 Hibernate");
		map.put("ssm", "Spring SpringMVC Mybatis");
		map.put("xml", "Extension Markup Language");

		
		map.entrySet().stream()   //获取流
		              .filter(e -> e.getKey().toLowerCase().contains("s"))   //筛选键中含“S”的元素
		              .sorted((e1,e2) -> e1.getValue().toString().length() - e2.getValue().toString().length())   //根据值的长度对元素排序
		              .filter(e -> e.getKey().length() >= 3)   //筛选键长度大于等于3的元素
		              .skip(1)   //跳过第一个元素
		              .limit(2)   //截取两个元素
		              .map(e -> e.getValue())   //获取值集合
		              .collect(Collectors.toList())   //收集在List集合中
		              .forEach(System.out::println);   //遍历	
	}
}

运行结果:

Spring Struts2 Hibernate
Spring SpringMVC Mybatis
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值