Я слышал, что lambdas скоро появятся на Java рядом с вами (J8). Я нашел пример того, как они будут выглядеть на каком-то блоге:
SoccerService soccerService = (teamA, teamB) -> {
SoccerResult result = null;
if (teamA == teamB) {
result = SoccerResult.DRAW;
}
else if(teamA < teamB) {
result = SoccerResult.LOST;
}
else {
result = SoccerResult.WON;
}
return result;
};
Итак, прямо с места в карьер:
- Где указаны
teamA
иteamB
? Или они (как какая-то странная форма дженериков)? - Является ли лямбда типом закрытия, или это наоборот?
- Какие преимущества это даст мне типичную анонимную функцию?