Java 8获取包含Object的字段

时间:2015-10-02 11:23:37

标签: java

我将从InstitutionUserConnection- List获取所有机构(InstitutionUserConnection包含一个称为机构的对象)

有谁知道Java 8的工作原理? 这是我的尝试,但它不起作用:

final List<InstitutionUserConnection> institutionUserConnections = ...
final List<String> institutionIds = institutionUserConnections.forEach(institution -> institution.getId());

非常感谢

[编辑]

旧时尚:

final List<String> institutionIds = new ArrayList<>();
for(final InstitutionUserConnection institutionUserConnection : institutionUserConnections) {
        institutionIds.add(institutionUserConnection.getInstitution().getId());
    }

1 个答案:

答案 0 :(得分:2)

尝试类似:

final List<String> institutionIds = institutionUserConnections.stream()
    .map(InstitutionUserConnection::getInstitution)
    .map(Institution::getId)
    .collect(Collectors.toList());

您可以找到更多类似的样本,例如。在Collectors类的Javadoc中。