Rückgabe von Lambda forEach () in Java

Ich versuche mich zu ändern, einige for-each-Schleifen zu lambda forEach()-Methoden zu entdecken, die Möglichkeiten des lambda-Ausdrücke. Die followong möglich zu sein scheint:

ArrayList<Player> playersOfTeam = new ArrayList<Player>();      
for (Player player : players) {
    if (player.getTeam().equals(teamName)) {
        playersOfTeam.add(player);
    }
}

Mit lambda forEach()

players.forEach(player->{if (player.getTeam().equals(teamName)) {playersOfTeam.add(player);}});

Aber der nächste doesen ' T work:

for (Player player : players) {
    if (player.getName().contains(name)) {
        return player;
    }
}

mit lambda

players.forEach(player->{if (player.getName().contains(name)) {return player;}});

Gibt es etwas falsch in der syntax der letzten Zeile oder ist es unmöglich, die Rendite von forEach() Methode?

InformationsquelleAutor der Frage samutamm | 2014-05-01

Schreibe einen Kommentar