Guest User

Untitled

a guest
Jan 21st, 2019
78
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.87 KB | None | 0 0
  1. List<ClassName> filteredObjects = objects.stream()
  2. .collect(Collectors.groupingBy(ClassName::getSecNumber))
  3. .values().stream()
  4. .flatMap(os -> os.stream().anyMatch(o -> o.getType() == Type.NEW) ?
  5. os.stream().filter(o -> o.getType() != Type.LEGACY) :
  6. os.stream()
  7. ).collect(Collectors.toList());
  8.  
  9. Collection<T> result = list.stream()
  10. .collect(toMap(T::getSecNumber,
  11. Function.identity(),
  12. (l, r) -> l.getType() == Type.LEGACY ? r : l))
  13. .values();
  14.  
  15. List<T> result =
  16. list.stream()
  17. .collect(groupingBy(T::getSecNumber))
  18. .values()
  19. .stream()
  20. .flatMap(l -> l.stream().anyMatch(e -> e.getType() == Type.NEW) ?
  21. l.stream().filter(e -> e.getType() != Type.LEGACY) :
  22. l.stream())
  23. .collect(toList());
Add Comment
Please, Sign In to add comment