Подтвердить что ты не робот

Как я могу подсчитать количество элементов, которые соответствуют предикату с потоками?

В Java7 у меня есть этот код:

public int getPlayersOnline() {
    int count = 0;
    for (Player player : players) {
        if (player.isActive()) {
            count++;
        }
    }
    return count;
}

Я пытаюсь использовать возможности Java 8 как можно больше, как я могу улучшить это с помощью lambdas?

4b9b3361

Ответ 1

Это будет однострочный:

return (int) players.stream().filter(Player::isActive).count();