Próbuję zmienić niektóre pętle for-each na forEach()
metody lambda, aby odkryć możliwości wyrażeń lambda. Wydaje się, że możliwe jest:
ArrayList<Player> playersOfTeam = new ArrayList<Player>();
for (Player player : players) {
if (player.getTeam().equals(teamName)) {
playersOfTeam.add(player);
}
}
Z lambdą forEach()
players.forEach(player->{if (player.getTeam().equals(teamName)) {playersOfTeam.add(player);}});
Ale następny nie działa:
for (Player player : players) {
if (player.getName().contains(name)) {
return player;
}
}
z lambdą
players.forEach(player->{if (player.getName().contains(name)) {return player;}});
Czy coś jest nie tak w składni ostatniej linii, czy też nie można wrócić z forEach()
metody?