我就废话不多说了,大家还是直接看代码吧~
// 利用stream进行类型转化 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;
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赋值:
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); });
运行结果:
stream().map()处理之后:1 stream().map()处理之后:2 stream().map()处理之后:3
3、利用stream().filter()处理List,对该List进行过滤处理:
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://zxbcw.cn/post/193900/
- 转载请注明:必须在正文中标注并保留原文链接
- QQ群: PHP高手阵营官方总群(344148542)
- QQ群: Yii2.0开发(304864863)