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.