Java 8: Cómo crear un mapa de la lista, donde clave se obtiene de una misma clase (EMPID) y valor como objeto (Empleado) en sí?

fatherazrael:

Cómo convertir de la lista para mapear en Java 8 estaban en forma de empIDdesde dentro de la clase y valor como un objeto en sí mismo.

List<CompanyEntity> result = 
             ifEntityManager.createNamedQuery("findByEmployeeId", CompanyEntity.class)
             .getResultList();
Map<String, CompanyEntity> result1 = result.stream()
        .collect(Collectors.toMap(CompanyEntity::getEmployeeId, CompanyEntity::this)); ??

Quiero que el segundo parámetro toMapcomo objeto en sí mismo. ¿Alguien podría sugerir la forma de lograr lo mismo?

He intentado hacer Collectors.toMap(CompanyEntity::getEmployeeId, this)pero no es capaz de alejarse de los errores de compilación.

Andrónico:

Se puede utilizar Function.identity()a partir de java.util.function:

Map<String, CompanyEntity> result1 = result.stream()
    .collect(Collectors.toMap(CompanyEntity::getEmployeeId, Function.identity()));

Supongo que te gusta

Origin http://43.154.161.224:23101/article/api/json?id=331469&siteId=1
Recomendado
Clasificación