我们如何在java.util.function.Function lambda中有2个参数?

Mun*_*sir 6 java lambda java-8

我们可以像这样创建lambda函数:

Function<Integer, String> getLambda = (a) -> new String("given value is "a);
Run Code Online (Sandbox Code Playgroud)

我有一个场景,我需要在参数中取2个值.如何使用Function实现这一目标?

例:

getLamda(10,20); // I know this line will give error. How can I acheive this? 
Run Code Online (Sandbox Code Playgroud)

Tun*_*aki 11

这是使用a完成的BiFunction<T,U,R>.以下是BiFunction在String的指定索引处返回字符的示例:

BiFunction<String, Integer, Character> charAtFunction = (string, index) -> string.charAt(index);
Run Code Online (Sandbox Code Playgroud)

  • @MuneebNasir检查以下问题:http://stackoverflow.com/q/18400210 (2认同)

dot*_*vav 7

尝试 :

BiFunction<Integer, Integer, String> lambda = (a, b) -> ("Given values are " + a + ", " + b);
Run Code Online (Sandbox Code Playgroud)