可以使用Java 8中的Stream API将List转换为Map,并根据某个属性作为键或值。以下是一些示例代码:
将List转换为Map,键为某个属性,值为对象本身
List<Person> personList = ... // 假设这是一个Person对象列表
Map<String, Person> personMap = personList.stream()
.collect(Collectors.toMap(Person::getName, Function.identity()));
在这个示例中,将Person对象列表转换为Map,其中键为Person对象的name属性,值为Person对象本身。
将List转换为Map,键为对象本身,值为某个属性
List<Person> personList = ... // 假设这是一个Person对象列表
Map<Person, String> personMap = personList.stream()
.collect(Collectors.toMap(Function.identity(), Person::getAddress));
在这个示例中,将Person对象列表转换为Map,其中键为Person对象本身,值为Person对象的address属性。
将List转换为Map,键为某个属性,值为另一个属性
List<Person> personList = ... // 假设这是一个Person对象列表
Map<String, String> personMap = personList.stream()
.collect(Collectors.toMap(Person::getName, Person::getAddress));
在这个示例中,将Person对象列表转换为Map,其中键为Person对象的name属性,值为Person对象的address属性。文章来源:https://www.toymoban.com/news/detail-537023.html
无论使用哪种方式,都可以使用Java 8的Stream API将List转换为Map,并根据某个属性作为键或值。需要注意的是,在将List转换为Map时,键必须是唯一的,否则将会抛出异常。文章来源地址https://www.toymoban.com/news/detail-537023.html
到了这里,关于java 对象list使用stream根据某一个属性转换成map的几种方式的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!