Используя Java 7 и ниже, это классический подход к этому:
for (List<Integer> list : myList) {
if (list != null && !list.isEmpty()) {
// do something with not empty list
}
}
С Java 8 и выше вы можете использовать forEach
:
myList.forEach(list -> {
if (list != null && !list.isEmpty()) {
// do something with not empty list
}
});
или, какуже упомянутый Евгением , с помощью потокового API вы можете заменить оператор if
на лямбда-выражение:
myList.stream()
.filter(list -> (list != null && !list.isEmpty()))
.forEach(list -> {
// do something with not empty list
});
Примечание: все эти 3 примера подразумевают, что вы инициализировали переменную myList
и это не null
, в противном случае NullPointerException
будет добавлено во все приведенные выше фрагменты.
Стандартный JDK не может быстро проверить, что коллекция не равна нулю и не пуста.Но если вы используете библиотеку Apache commons-collections
, они предлагают такой метод: CollectionUtils.isNotEmpty () .Однако я бы не рекомендовал добавлять эту зависимость в ваш проект только ради этой единственной функции.