我就废话不多说了,大家还是直接看代码吧~
// 利用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()处理之后:1stream().map()处理之后:2stream().map()处理之后:33、利用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案例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。