日食系列
如果您使用的是Eclipse Collections,则可以使用该anySatisfy()
方法。如果可能的话,要么调整你List
的,ListAdapter
要么改变你List
的ListIterable
。
ListIterable<MyObject> list = ...;
boolean result =
list.anySatisfy(myObject -> myObject.getName().equals("John"));
如果你经常做这样的操作,最好提取一个方法来回答类型是否具有属性。
public class MyObject
{
private final String name;
public MyObject(String name)
{
this.name = name;
}
public boolean named(String name)
{
return Objects.equals(this.name, name);
}
}
您可以将替代形式anySatisfyWith()
与方法参考一起使用。
boolean result = list.anySatisfyWith(MyObject::named, "John");
如果您无法将您的更改List
为ListIterable
,请按照以下方式使用ListAdapter
.
boolean result =
ListAdapter.adapt(list).anySatisfyWith(MyObject::named, "John");
注意:我是 Eclipse ollections 的提交者。