Java流和分组:将对象放入多个组[重复]
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java流和分组:将对象放入多个组[重复]相关的知识,希望对你有一定的参考价值。
我不认为这称为“分组”,但我需要达到以下条件:我有课因此,每个人都可以属于多个类别。我想获得以下映射:
class Person {
String name;
Set<String> groups;
}
我有一些人:父亲=> {“工人”,“男子”}
- 母亲=> {“女人”}
- Son => {“ Student”,“ Men”}
- 女儿=> {“学生”,“女人”}
"Worker" => {Father}
"Men" => {Father, Son}
"Student" => {Son, Daughter}
"Woman" => {Mother, Daughter}
现在我可以通过手动遍历每个人并将其放到Map<String,List<Person>>
来完成此操作>我正在尝试找到一种更优雅的wat来使用流(或StreamEx)oneliner进行操作,例如:
List<Persons> family= ...; Map<String,List<Person>> groupped = family.stream().groupByMultipleAttributes(Person::getGroups)
我不认为这叫做“分组”,但我需要达到以下条件:我有类Person Person {字符串名;设置组; }我有一些人:父亲=> {“工人”,“ ...
答案
您可以生成所有关联的组和Person
对,然后将它们与groupingBy
一起收集到Map
中:以上是关于Java流和分组:将对象放入多个组[重复]的主要内容,如果未能解决你的问题,请参考以下文章