Как переписать код со стримами для Java 7?
Этот код был создан для Java 8+, а вот Java 7 его не понимает и не компилирует, пишет что не понятно .stream().filter()
Вопрос, что нужно изменить в данном коде, чтобы он мог быть скомпилирован на Java 7?
public void run()
{
adjustPotentialIndexOutOfBounds();
List<FakePlayer> fakePlayers = FakePlayerManager.INSTANCE.getFakePlayers().subList(_from, _to);
try {
fakePlayers.stream().filter(x-> !x.getFakeAi().isBusyThinking()).forEach(x-> x.getFakeAi().thinkAndAct());
} catch(Exception ex) {
ex.printStackTrace();
}
}
Второй фрагмент:
if (player.getTarget() == null) {
List<Creature> targets = player.getKnownTypeInRadius(creatureClass, radius).stream()
.filter(x->!x.isDead())
.collect(Collectors.toList());
if (!player.isDead())
targets.add(player);
List<Creature> sortedTargets = targets.stream().sorted((x1, x2) -> Double.compare(x1.getCurrentHp(), x2.getCurrentHp())).collect(Collectors.toList());
if (!sortedTargets.isEmpty()) {
Creature target = sortedTargets.get(0);
player.setTarget(target);
}
// ....
}