在Java 8中,我如何使用Stream
API通过检查每个对象的属性的清晰度来过滤一个集合?
例如,我有一个Person
对象列表,我想删除具有相同名称的人,
persons.stream().distinct();
将使用默认的相等检查Person
对象,所以我需要像这样,
persons.stream().distinct(p -> p.getName());
不幸的是,distinct()
方法没有这样的重载。不修改相等检查在Person
类是可能做到这一点简洁?