java stream map 如何使用
时间: 2023-10-18 18:21:22 浏览: 154
Java Stream map方法是一种转换流的操作,它可以将流中的每个元素都映射到另一个元素上,所以使用map方法可以将一个流中的数据转换成另一个流。
以下是一些使用Java Stream map方法的示例:
1. 将字符串流转换为整数流:
```java
List<String> strList = Arrays.asList("1", "2", "3", "4", "5");
List<Integer> intList = strList.stream().map(Integer::valueOf).collect(Collectors.toList());
```
2. 将对象流转换为属性流:
```java
List<Person> personList = Arrays.asList(new Person("Tom", 18), new Person("Jerry", 20), new Person("Marry", 22));
List<String> nameList = personList.stream().map(Person::getName).collect(Collectors.toList());
```
3. 将集合流转换为数组流:
```java
List<List<Integer>> listList = Arrays.asList(Arrays.asList(1, 2), Arrays.asList(3, 4), Arrays.asList(5, 6));
int[] arr = listList.stream().flatMap(Collection::stream).mapToInt(Integer::intValue).toArray();
```
在这个例子中,我们使用flatMap方法将每个子列表中的元素映射到一个新的流中,然后使用mapToInt方法将每个元素转换为int类型,最后使用toArray方法将结果转换为一个int数组。
阅读全文