检查数组元素的最佳方法包含特定值

时间:2016-03-16 15:21:02

标签: java arrays list arraylist contains

我有一个对象列表,如果它包含特定值,则必须搜索此列表。特定值都保存在数组中。我应该在下面的代码中为allValuesFromArray设置什么,以便它能够相应地运行?

List<ownClass> objectList;
String[] specificValueArray = {"value0","value1","value2","value3"};
for (ownClass object:objectlist){
    if (object.getSomeValue() == allValuesFromArray){
            //some code
        }
    }

2 个答案:

答案 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),但是干净且可读。