我有枚举,并且可以毫无困难地迭代它的值,如下所示:
for(catType ct : catType.values()) {
if(ct.toString().equals()))
}
我有对象列表,其中每个对象都有(或没有)与枚举中的值匹配的属性。
List<Zoo> zoos = zooRepository.findAll();
要从动物园的第一个索引中获取我需要的字符串,我必须
zoos.get(0).getAnimal();
如何迭代所有 catType,以便检查它们是否存在于对象列表中的任何对象中,如果它们不存在,我可以进一步将它们添加到数据库中?
最佳答案
如果使用java8,可以通过lambda表达式来完成
for(catType ct : catType.values()) {
boolean exist = zoos.stream()
.anyMatch(zoo -> zoo.getAnimal().equals(ct.toString()));
}
关于java - 如何检查对象列表中是否存在枚举值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52259086/