如何在 Java 对象的属性上应用 contains 函数?

Dur*_*har 2 java contains list

我的Address课程为:

public class Address{
    private String city;
    private String pincode;
    private String state;
}
Run Code Online (Sandbox Code Playgroud)

我有一个不同对象的属性requestprivate List<Address> transitLocations.

如何检查是否transitLocations包含状态等于"SomeString"一行的地址。

PS:请假设所有 getter 和 setter 都存在于代码中。
我不想覆盖 equals 因为Address类也在其他地方使用。

Mar*_*o13 5

不确定为什么使用filtercollect已提出解决方案......

您可以使用 a Predicate并将其传递给Stream#anyMatch

public boolean containsAddressWithState(
    Collection<? extends Address> collection, String state)
{
    return collection.stream().anyMatch(a -> a.getState().equals(state));
}    
Run Code Online (Sandbox Code Playgroud)