java stream 取list对象的某个值
时间: 2023-09-17 15:01:13 浏览: 129
在Java中,使用Stream流取出List对象的某个值非常简单。首先,我们需要将List集合转换为流对象,然后使用流的方法来操作。
假设我们有一个List<User>对象,其中User是一个自定义的类,该类有一个name属性。我们想取出List中所有User对象的name属性。以下是具体的代码示例:
```java
List<User> userList = new ArrayList<>();
userList.add(new User("Tom"));
userList.add(new User("Jerry"));
userList.add(new User("Alice"));
List<String> names = userList.stream()
.map(User::getName) // 使用map方法提取每个User对象的name属性
.collect(Collectors.toList()); // 将结果收集到一个新的List中
System.out.println(names); // 输出结果:[Tom, Jerry, Alice]
```
在上述代码中,我们首先调用`stream()`方法将List转换为流对象,然后使用`map()`方法提取每个User对象的name属性。`map()`方法的参数是一个函数式接口,我们可以使用方法引用语法`User::getName`来简化代码。最后,我们使用`collect()`方法将结果收集到一个新的List中。
通过以上操作,我们成功取出了List对象中所有User对象的name属性,并将结果保存在一个新的List中。
阅读全文