Я пытаюсь изменить некоторые для каждого цикла на lambda forEach()
-методы, чтобы обнаружить возможности лямбда-выражений. Кажется, что это возможно:
ArrayList<Player> playersOfTeam = new ArrayList<Player>();
for (Player player : players) {
if (player.getTeam().equals(teamName)) {
playersOfTeam.add(player);
}
}
С лямбдой forEach()
players.forEach(player->{if (player.getTeam().equals(teamName)) {playersOfTeam.add(player);}});
Но следующий не работает:
for (Player player : players) {
if (player.getName().contains(name)) {
return player;
}
}
с lambda
players.forEach(player->{if (player.getName().contains(name)) {return player;}});
Что-то не так в синтаксисе последней строки или невозможно вернуться из метода forEach()
?