Advertisement
Guest User

Untitled

a guest
Jun 23rd, 2017
60
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 5 0.83 KB | None | 0 0
  1.  public static void groupByLastNameExample(List<Person> people) {
  2.     //before Guava - 9 lines
  3.     Map<String, Collection<Person>> peopleForLastNameOld = new HashMap<String, Collection<Person>>();
  4.     for (Person p : people) {
  5.       List<Person> peopleWithLastName = peopleForLastNameOld.get(p.getLast());
  6.       if (peopleWithLastName == null) {
  7.         peopleWithLastName = new ArrayList<Person>();
  8.         peopleForLastNameOld.put(p.getLast(), peopleWithLastName);
  9.       }
  10.       peopleWithLastName.add(p);
  11.     }
  12.     //peopleForLastNameOld.get("Smith") will return Collection<Person>
  13.  
  14.     //new way - 4 lines
  15.     Multimap<String, Person> peopleForLastName = HashMultimap.create();
  16.     for (Person p : people) {
  17.       peopleForLastName.put(p.getLast(), p);
  18.     }
  19.     //peopleForLastName.get("Smith") will return Collection<Person>
  20.   }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement