Java stearm 取合集中的id组成新的集合并转为id数组
时间: 2024-11-30 17:19:34 浏览: 3
在Java中,如果你有一个Stream集合,比如List或Set,其中包含一些自定义对象,这些对象有一个名为"id"的属性,你可以使用流(Stream)的`map`和`collect`方法来提取所有"id"并转换成一个新的Id数组。
首先,假设你的对象类定义如下:
```java
public class MyObject {
private String id;
// ...其他字段和构造函数...
}
```
然后,你可以这样做:
```java
List<MyObject> objects = ...; // 你的对象列表
// 使用stream过滤并提取id
List<String> ids = objects.stream()
.map(MyObject::getId) // 提取每个对象的id
.collect(Collectors.toList()); // 将结果收集到List中
// 现在将List转换为数组
String[] idArray = ids.toArray(new String[ids.size()]);
```
注意,这里我们假设`getId()`是一个返回字符串的方法。如果id不是直接的成员变量而是通过getter方法获取,你需要替换`MyObject::getId`为`MyObject::getId()`.
阅读全文