Siq*_*Lin 5 c# java lambda java-8
Java 8具有Supplier<T>
0个参数功能,Function<T, R>
1个参数功能和BiFunction<T, U, R>
2个参数功能.
什么类型表示一个函数或lambda表达式,它接受3个参数,如in
SomeType lambda = (int x, double y, String z) -> x; // what is SomeType?
Run Code Online (Sandbox Code Playgroud)
在C#中,Func<T, TResult>
最多可重载16个参数,因此我们可以编写
Func<int, double, string, int> lambda = (int x, double y, string z) => x;
Run Code Online (Sandbox Code Playgroud)
Java标准库是否提供类似的东西,或者您是否必须编写自己的"TriFunction"接口来处理具有3个参数的函数?
你必须编写自己的功能界面.JDK没有提供这样的实现.
请注意,您始终可以TriFunction
使用现有类型编写类似的内容
Function<Integer, Function<Double, Function<String, Integer>>> func =
i -> d -> s -> i + d.intValue() + Integer.parseInt(s);//whatever random implementation
func.apply(42).apply(1.5).apply("1234");
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
545 次 |
最近记录: |