Retornar de lambda forEach () em java
Estou tentando alterar alguns loops de cada para lambdaforEach()
-métodos para descobrir as possibilidades de expressões lambda. O seguinte acompanhamento parece ser possível:
ArrayList<Player> playersOfTeam = new ArrayList<Player>();
for (Player player : players) {
if (player.getTeam().equals(teamName)) {
playersOfTeam.add(player);
}
}
Com lambdaforEach()
players.forEach(player->{if (player.getTeam().equals(teamName)) {playersOfTeam.add(player);}});
Mas o próximo não funciona:
for (Player player : players) {
if (player.getName().contains(name)) {
return player;
}
}
com lambda
players.forEach(player->{if (player.getName().contains(name)) {return player;}});
Existe algo errado na sintaxe da última linha ou é impossível retornar deforEach()
método?