I have a list of objects and have to search through this list if it contains a specific value. The specific values are all saved in an array. What should I set for allValuesFromArray
in the code below so that it would function accordingly?
List<ownClass> objectList;
String[] specificValueArray = {"value0","value1","value2","value3"};
for (ownClass object:objectlist){
if (object.getSomeValue() == allValuesFromArray){
//some code
}
}
Idos
15.3k14 gold badges63 silver badges81 bronze badges
2 Answers 2
IIUC, you can use:
if (Arrays.asList(specificValueArray).contains(object.getSomeValue())){
...
}
This will return true
if object.getSomeValue()
is inside specificValueArray
(remember to
import java.util.Arrays;
)
answered Mar 16, 2016 at 15:26
Sign up to request clarification or add additional context in comments.
Comments
Have you tried:
if (!objectList.retainAll(Arrays.asList(specificValueArray)).isEmpty()) {
//some code
}
This disguises the complexity a bit, in that this is O(n^2), but is clean and readable.
answered Mar 16, 2016 at 15:27
Comments
lang-java
Collections.binarySearch