我就废话不多说了,大家还是直接看代码吧~
1
2
3
4
5
6
7
8
9
10
11
12
13
14
|
List<String> stringList = new ArrayList<>(); stringList.add( "a11" ); stringList.add( "b11" ); stringList.add( "c11" ); stringList.add( "d11" ); stringList.add( "e11" ); List<Map<String,String>> stringList1 = stringList.stream().map(item-> { Map<String,String> map = new HashMap<>(); map.put( "name" , item.toUpperCase()); return map; } ).collect(Collectors.toList()); |
补充知识:Java8 利用Lambda处理List集合循环给另外一个List赋值过滤处理
1、利用stream().forEach()循环处理List;
1
2
3
4
5
6
7
8
|
List<String> list = Lists.newArrayList(); //新建一个List 用的google提供的Guava package com.google.common.collect; list.add( "1" ); list.add( "2" ); list.add( "3" ); list.stream().forEach(string ->{ System.out.println(string); }); |
运行结果:
1
2
3
2、利用stream().map()处理List,并给另外一个List赋值:
1
2
3
4
5
6
7
8
9
10
11
12
13
|
List<String> list1 = Lists.newArrayList(); List<String> list2 = Lists.newArrayList(); list1.add( "1" ); list1.add( "2" ); list1.add( "3" ); list2 = list1.stream().map(string -> { return "stream().map()处理之后:" + string; }).collect(Collectors.toList()); list2.stream().forEach(string -> { System.out.println(string); }); |
运行结果:
1
2
3
|
stream().map()处理之后: 1 stream().map()处理之后: 2 stream().map()处理之后: 3 |
3、利用stream().filter()处理List,对该List进行过滤处理:
1
2
3
4
5
6
7
8
9
|
List<String> list1 = Lists.newArrayList(); List<String> list2 = Lists.newArrayList(); list1.add( "1" ); list1.add( "1" ); list1.add( "2" ); list1.add( "3" ); list2 = list1.stream().filter(s -> s != "1" ).collect(Collectors.toList()); System.out.println(list2.toString()); |
运行结果:
[2, 3]
以上这篇java8 stream 由一个list转化成另一个list案例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持服务器之家。
原文链接:https://www.cnblogs.com/mlh1421/p/13089725.html