java8 stream 由一个list转化成另一个list案例
文件大小: 33k
源码售价: 69 个金币 积分规则     积分充值
资源说明: Java8 Stream 由一个 List 转化成另一个 List 案例 Java8 Stream 是一个功能强大的工具,可以将一个 List 转化成另一个 List,今天我们就来探讨这个话题。 什么是 Java8 Stream Java8 Stream 是 Java 语言的一个新特性,它允许我们以一种声明式的方式来处理数据。Stream 可以看作是一个延迟计算的数据结构,它可以根据需要生成元素,而不需要一次性加载所有元素。 Java8 Stream 由一个 List 转化成另一个 List 现在,我们将学习如何使用 Java8 Stream 将一个 List 转化成另一个 List。下面是一个简单的示例: ```java List stringList = new ArrayList<>(); stringList.add("a11"); stringList.add("b11"); stringList.add("c11"); stringList.add("d11"); stringList.add("e11"); List> stringList1 = stringList.stream() .map(item -> { Map map = new HashMap<>(); map.put("name", item.toUpperCase()); return map; }) .collect(Collectors.toList()); ``` 在上面的代码中,我们首先创建了一个 List,里面包含了五个字符串元素。然后,我们使用 Stream 将这个 List 转化成另一个 List,其中每个元素是一个 Map。Map 的键是 "name”,值是原始字符串的大写形式。 Java8 Stream 的其他应用 除了将一个 List 转化成另一个 List 之外,Java8 Stream 还有很多其他的应用。下面我们来看一些示例: 1. 利用 Stream().forEach() 循环处理 List ```java List list = Lists.newArrayList(); list.add("1"); list.add("2"); list.add("3"); list.stream().forEach(string -> { System.out.println(string); }); ``` 在上面的代码中,我们使用 Stream().forEach() 方法来循环处理 List,并将每个元素打印出来。 2. 利用 Stream().map() 处理 List,并给另外一个 List 赋值 ```java List list1 = Lists.newArrayList(); List 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() 方法来处理 List,并将每个元素转换成一个新的字符串,最后将结果assign给另一个 List。 3. 利用 Stream().filter() 处理 List,对该 List 进行过滤处理 ```java List list1 = Lists.newArrayList(); List 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()); ``` 在上面的代码中,我们使用 Stream().filter() 方法来对 List 进行过滤处理,将所有元素为 "1" 的元素去除,最后将结果assign给另一个 List。 结论 今天,我们学习了如何使用 Java8 Stream 将一个 List 转化成另一个 List,同时还学习了一些其他的应用,例如使用 Stream().forEach() 循环处理 List、使用 Stream().map() 处理 List,并给另外一个 List 赋值、使用 Stream().filter() 处理 List,对该 List 进行过滤处理。这些技术可以帮助我们更加灵活地处理数据,我们可以根据需要选择合适的方法来处理数据。
本源码包内暂不包含可直接显示的源代码文件,请下载源码包。