我就廢話不多說了,大家還是直接看代碼吧~
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