Лямбда-выражение - это сокращение для анонимного класса, реализующего интерфейс с одним методом.
Вы можете определить любое мышление внутри этого уникального метода.
Лямбда-выражение:
(a, b) -> {
// Your code here
}
эквивалентно:
new MyInterface() {
public ReturnType uniqueMethod(AType a, BType b) {
// Exactly the same code here
}
}
Зависит от вида анонимного класса, полученного из интерфейса, который вам нужен для записи ReturnType
, также может быть void
, а количество параметров может быть 0 или любым количеством параметров (в этом случае два параметра тип AType
и BType
)
Следующая форма лямбда-выражения:
(a, b) -> something
является еще одним ярлыком и эквивалентен:
new MyInterface() {
public ReturnType uniqueMethod(AType a, BType b) {
// Same as before but with the additional keyword return
return something;
}
}
В вашем случае вы должны применить первую форму лямбда-выражения с блоком { }
, и вы можете определить любой тип и количество переменных в скобках