Страницы

Поиск по вопросам

четверг, 25 октября 2018 г.

Два параметра в лямбда-выражении

Как лямбда-выражению передать два разных параметра? Например
Function getConcatenatedString = (amount, s) -> {...}
amount - Integer, s - String.
Есть ли еще какая-то возможность, кроме как определения интерфейса вроде:
@FunctionalInterface interface Function3 { public R apply (A a, B b); }


Ответ

Вероятно, Вам нужна следующая конструкция:
BiFunction getConcatenatedString = (Integer amount, String s) -> { return Integer.toString(amount) + " " + s; };
Кстати, поскольку выражение в лямбде единственно, её можно записать покороче:
BiFunction getConcatenatedString = (Integer amount, String s) -> Integer.toString(amount) + " " + s;

Комментариев нет:

Отправить комментарий