Predicate in filtering

132
05 августа 2019, 08:30
 private List<BaseIcon> filterIconsToChangeByPositions(List<BaseIcon> baseIcons, List<Integer> positions) {
    return baseIcons.stream()
                    .filter(baseIcon -> pred(positions))
                    .collect(Collectors.toList());
}
private Predicate<BaseIcon> pred(List<Integer> positions) {
    return baseIcon -> positions.stream().anyMatch(pos -> pos == baseIcon.getPositionOnGameField());
}

не могу понять почему не компилится данныек код ведь типо пишет что у лмбд плохой тип

Answer 1

Вы пишете в фильтре ещё одну лямбду вызывающую вашу функцию. Просто передайте в него её.

.filter(pred(positions))
READ ALSO
Нажатие за пределы View(EditText)

Нажатие за пределы View(EditText)

Нужно сделать так, чтобы программа понимала, что пользователь нажал на ЛЮБОЕ место экрана за пределами editText

123
Передать данные из одного фрагмента в другой через Preferences

Передать данные из одного фрагмента в другой через Preferences

Есть 2 фрагмента в одном активити которые сменяются слайдом(2 вкладки)2 фрагмента: ArmaturaWeight

104
Закрывается ли сессия

Закрывается ли сессия

Из одной статьи в интернете : SessionFactory getCurrentSession() возвращает сессию, связанную с контекстомНо для того, чтобы это работало, нам нужно настроить...

110
CopyOnWriteArrayList vs ArrayList

CopyOnWriteArrayList vs ArrayList

Изучаю пакет javautil

89