Varias formas de convertir la lista de objetos de Java en un mapa de acuerdo con un determinado atributo usando la transmisión

Una lista se puede convertir en un mapa usando la API de flujo en Java 8, con una propiedad como clave o valor. Aquí hay un código de muestra:

Convertir lista en mapa, la clave es una propiedad y el valor es el objeto en sí

List<Person> personList = ... // 假设这是一个Person对象列表
Map<String, Person> personMap = personList.stream()
        .collect(Collectors.toMap(Person::getName, Function.identity()));

En este ejemplo, la lista de objetos Persona se convierte en un Mapa, donde la clave es la propiedad de nombre del objeto Persona y el valor es el propio objeto Persona.

Convertir lista en mapa, la clave es el objeto en sí y el valor es un atributo


List<Person> personList = ... // 假设这是一个Person对象列表
Map<Person, String> personMap = personList.stream()
        .collect(Collectors.toMap(Function.identity(), Person::getAddress));

En este ejemplo, la lista de objetos Person se convierte en un mapa donde la clave es el objeto Person en sí mismo y el valor es la propiedad de dirección del objeto Person.

Convierta una lista en un mapa con una clave como propiedad y un valor como otra propiedad

List<Person> personList = ... // 假设这是一个Person对象列表
Map<String, String> personMap = personList.stream()
        .collect(Collectors.toMap(Person::getName, Person::getAddress));

En este ejemplo, la lista de objetos Persona se convierte en un Mapa, donde la clave es la propiedad de nombre del objeto Persona y el valor es la propiedad de dirección del objeto Persona.

Cualquiera que sea la forma en que lo use, puede usar la API de flujo de Java 8 para convertir una lista en un mapa con una propiedad como clave o valor. Cabe señalar que al convertir Lista a Mapa, la clave debe ser única, de lo contrario, se lanzará una excepción.

Supongo que te gusta

Origin blog.csdn.net/qq_16607641/article/details/130711355
Recomendado
Clasificación