对一个 List 里面相同属性的内容进行分类,如:对相同部门的员工进行分类。 思路是使可以区分类型的属性进行分类,以部门类型为例。
List<Devloper> devlopers = new ArrayList<>();
devlopers.add(new Devloper(1, "嗯哼", 1));
devlopers.add(new Devloper(2, "啊哈", 1));
devlopers.add(new Devloper(3, "哦吼", 1));
devlopers.add(new Devloper(4, "呃呵", 2));
devlopers.add(new Devloper(5, "呜唿", 2));
Map<Integer, List<Devloper>> devloperMap = new HashMap<>();
for (Devloper devloper: devlopers) {
if (devloperMap.containsKey(devloper.getDept())) {
devloperMap.get(devloper.getDept()).add(devloper);
} else {
List<Devloper> devs = new ArrayList<>();
devs.add(devloper);
devloperMap.put(devloper.getDept(), devs);
}
}
{
1=[
Devloper{id=1, name='嗯哼', dept=1},
Devloper{id=2, name='啊哈', dept=1},
Devloper{id=3, name='哦吼', dept=1}
],
2=[
Devloper{id=4, name='呃呵', dept=2},
Devloper{id=5, name='呜唿', dept=2}
]
}