按Java分组字段名称 [英] Group by field name in Java

查看:298
本文介绍了按Java分组字段名称的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在尝试通过其字段对Java对象进行分组,例如 Person.java

I'm trying to group Java objects by their field, i.e Person.java

public class Person {
    String name;
    String surname;
    ....
}

所以如果我有个人对象,最简单的方法是让所有的人将David命名为code映射,String,List和Person地图; ?

我在Google上找到了这个(但不编译),似乎是我正在寻找的东西:
http://www.anzaan.com / 2010/06 / grouping-objects-using-objects-property /

I found this on Google (but it doesn't compile), it seems to be the thing I'm looking for: http://www.anzaan.com/2010/06/grouping-objects-using-objects-property/

推荐答案

这样做更简单,但手动执行并不困难:

There's probably a library that can do this more simply, but it's not too hard to do it manually:

List<Person> allPeople; // your list of all people
Map<String, List<Person>> map = new HashMap<String, List<Person>>();
for (Person person : allPeople) {
   String key = person.getName();
   if (map.get(key) == null) {
      map.put(key, new ArrayList<Person>());
   }
   map.get(key).add(person);
}

List<Person> davids = map.get("David");

这篇关于按Java分组字段名称的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆