在Java 8中,如何从列表转换为映射是在类内部以empID
的形式,并将值本身作为对象本身。
List<CompanyEntity> result =
ifEntityManager.createNamedQuery("findByEmployeeId", CompanyEntity.class)
.getResultList();
Map<String, CompanyEntity> result1 = result.stream()
.collect(Collectors.toMap(CompanyEntity::getEmployeeId, CompanyEntity::this)); ??
我想要
toMap
中的第二个参数作为对象本身。有人可以建议如何实现相同目标吗?我尝试执行
Collectors.toMap(CompanyEntity::getEmployeeId, this)
,但无法摆脱编译错误。 最佳答案
您可以使用Function.identity()
中的java.util.function
:
Map<String, CompanyEntity> result1 = result.stream()
.collect(Collectors.toMap(CompanyEntity::getEmployeeId, Function.identity()));