在Java中,java.util.function
包提供了一些通用的函数式接口,这些接口可以用于替代.NET中的Action<T>
和Func<T, U>
。
Java中的Action<T>
等效于.NET中的Action<T>
,它表示一个接受单个参数并且无返回值的操作。在Java中,可以使用java.util.function.Consumer<T>
来实现类似的功能。
例如,在.NET中,可以定义一个Action<String>
如下:
Action<string> action = str => Console.WriteLine(str);
在Java中,可以使用Consumer<String>
来实现类似的功能:
Consumer<String> action = str -> System.out.println(str);
Java中的Func<T, U>
等效于.NET中的Func<T, U>
,它表示一个接受单个参数并且返回一个结果的函数。在Java中,可以使用java.util.function.Function<T, R>
来实现类似的功能。
例如,在.NET中,可以定义一个Func<String, int>
如下:
Func<string, int> func = str => str.Length;
在Java中,可以使用Function<String, Integer>
来实现类似的功能:
Function<String, Integer> func = str -> str.length();
总之,Java中的java.util.function
包提供了一些通用的函数式接口,这些接口可以用于替代.NET中的Action<T>
和Func<T, U>
。
领取专属 10元无门槛券
手把手带您无忧上云