Sobes.tech
Junior — Senior

Removing duplicate person records by last name using Stream API

livecode

Task condition

It is necessary to implement the method distinctPersonByLastName, which:

  • filters elements from the given list, leaving only one record for each unique last name (lastname);
  • uses Stream API capabilities to perform filtering;
  • saves the first encountered last name value and discards subsequent duplicates;
  • returns a new list with no duplicate last names.
public List<Person> distinctPersonByLastName(List<Person> persons) {
}

@RequiredArgsConstructor
@EqualsAndHashCode
@Getter
public class Person{
  private final String firstname;
  private final String lastname;
}