Как проверить, соответствуют ли все элементы java-коллекции некоторым условиям?

У меня есть ArrayList<Integer>. Я хочу проверить, все ли элементы списка больше или меньше определенного условия. Я могу сделать это, итерации по каждому элементу. Но я хочу знать, есть ли какой-либо метод в классе Collection, чтобы получить ответ, как мы можем сделать, чтобы найти максимум или минимум с помощью Collections.max() и Collections.min() соответственно.

Ответ 1

Если у вас есть java 8, используйте функцию stream allMatch (ссылка):

 ArrayList<Integer> col = ...;
 col.stream().allMatch(i -> i>0); //for example all integers bigger than zero

Ответ 2

Вы можете использовать Google guavas Iterables.all

 Iterables.all(collection, new Predicate() {
    boolean apply(T element)  {
       .... //check your condition 
   } 
 } 

Ответ 3

Вы не можете проверять значения без повторения всех элементов списка .

for(Integer value : myArrayList){

    if(value > MY_MIN_VALUE){
        // do my job
    }
}

Я надеюсь, что это поможет