List<Partrevision> partrevisions把里面的partrevision.getThitobjectid()全部提取到一个新的集合里面去
时间: 2024-09-18 15:12:40 浏览: 24
List<Long>转一维数组 Long[](csdn)————程序.pdf
5星 · 资源好评率100%
如果你有一个`List<Partrevision>`类型的列表,其中每个`Partrevision`对象都有一个`getThisObjectId()`方法,你可以使用Java的流(Stream) API来轻松地将这些`objectId`提取到一个新的集合,如`List<Long>`或`Set<Long>`,避免了显式迭代。以下是代码示例:
```java
import java.util.List;
import java.util.stream.Collectors;
// 假设partrevisions是一个List<Partrevision>
List<Partrevision> partrevisions = ...;
// 使用stream filter和map方法提取objectId
List<Long> objectIds = partrevisions.stream()
.map(Partrevision::getThisObjectId) // 获取每个Partrevision的objectId
.collect(Collectors.toList()); // 将所有objectId收集到新的List中
// 或者,如果你想去除重复的对象ID,可以用Collectors.toSet()替换toList()
Set<Long> uniqueObjectIds = partrevisions.stream()
.map(Partrevision::getThisObjectId)
.collect(Collectors.toSet());
```
在这个例子中,`filter`方法用于选择具有非空`thisObjectId`的元素,`map`方法用于应用`getThisObjectId`方法,而`collect`则用于将中间结果转换为所需的集合类型(列表或集合,取决于是否允许重复)。
阅读全文