Lambada 总结

10 篇文章 0 订阅
5 篇文章 0 订阅

最近总结下,项目中使用的lambada的案例

  1. 首先list转化为map

使用一个叫collections.toMap的方法
里面有三个参数,第一就是转化为map后的key是什么,第二:转化map中value放什么,第三个,就是,merge,就是如果key相同如何处置,在下面程序中(a,b)->a,代表如果相同我就获取进行跳过,如果(a,b)->b,就是进行覆盖,第四个参数说明生产一个什么样子的map,这里是一个linkedHashMap就是有序的

public class Test1 {
	public static void main(String[] args) {
		List<User> list =Lists.newArrayList(new User("a","1"),
				new User("a","2"),
				new User("b","b1")
		);
		LinkedHashMap<String,User> map=	list.stream().collect(Collectors.toMap(User::getName, user -> user,
				       (a,b)->a,
				    LinkedHashMap::new));
		 //{"a":{"name":"a","value":"1"},"b":{"name":"b","value":"b1"}}
		System.out.println(JSONObject.toJSON(map));
  
	}


}

 class  User{
	private String name;
	private String value;

	 public User(String name, String value) {
		 this.name = name;
		 this.value = value;
	 }

	 public String getName() {
		 return name;
	 }

	 public void setName(String name) {
		 this.name = name;
	 }

	 public String getValue() {
		 return value;
	 }

	 public void setValue(String value) {
		 this.value = value;
	 }
 }

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值