我有一个对象列表,如果它包含特定值,则必须搜索此列表。特定值都保存在数组中。我应该在下面的代码中为allValuesFromArray
设置什么,以便它能够相应地运行?
List<ownClass> objectList;
String[] specificValueArray = {"value0","value1","value2","value3"};
for (ownClass object:objectlist){
if (object.getSomeValue() == allValuesFromArray){
//some code
}
}
答案 0 :(得分:2)
IIUC,您可以使用:
if (Arrays.asList(specificValueArray).contains(object.getSomeValue())){
...
}
如果true
位于object.getSomeValue()
内,则会返回specificValueArray
(请记住为
import java.util.Arrays;
)
答案 1 :(得分:0)
你试过了吗?
if (!objectList.retainAll(Arrays.asList(specificValueArray)).isEmpty()) {
//some code
}
这有点掩盖了复杂性,因为它是O(n ^ 2),但是干净且可读。