我有一个实体:

public class Entity
{
private long id;
private InnerEnity data;
public long getId() {
return id;
}
public InnerEnity getData() {
return data;
}
}

InnerEnity类别

public class InnerEnity
{
private long id;
private String data;
public long getId() {
return id;
}
public String getData() {
return data;
}
}

我需要的是InnerEnity ID列表.

为了解决这个问题,我尝试了类似的事情:-

List innerEnityIds = listOfEnity.stream().map(sys -> sys.getData().stream().map(obj->obj.getId().collect(Collectors.toList())));

解决方法:

您只需将实体映射到其内部实体的(数据)id即可:

List innerEnityIds = listOfEnity.stream()
.map(entity -> entity.getData().getId()) // <<< this
.collect(Collectors.toList());

标签:java-8,java-stream,collections,java