2 java java-8 functional-interface
我是使用流和函数式接口进行编程的新手,并且在文档中java.util.function.BiConsumer描述了如下方法accept,但尚不清楚
void accept(T t,
U u)
Performs this operation on the given arguments.
Parameters:
t - the first input argument
u - the second input argument
Run Code Online (Sandbox Code Playgroud)
函数接口可以使用 lamda 表达式来引用,如下所示
BiConsumer<String,String> a=(a,b)->{
}
Run Code Online (Sandbox Code Playgroud)
但“此操作在这里到底意味着什么”。提前致谢
但这里的“此操作”到底是什么意思呢?
该BiConsumer接口实际上是任何采用两种引用类型(或在您的示例中为相同类型)的两个参数并且不返回任何内容的函数的签名。符合此接口的函数可以用它们做任何事情。它可以打印它们。它可以将它们添加到某些地图中。它可以……把它们扔掉,并且绝对什么也不做。
“此操作”指的是(实际上)实现该接口的 lambda。或者更准确地说,lambda 的作用。
所以...基本上...当您将 lambda 作为类型参数传递BiConsumer给某个方法时,该方法可以调用accept(arg1, arg2)并期望它将执行 javadoc 所说的操作;即,将 lambda(或其他)实现的“操作”应用于这两个参数。
现在这个BiConsumer接口有点不寻常,因为它不返回任何内容。所以它不像其他功能接口那样广泛使用。但如果您正在寻找示例,请尝试以下操作:
| 归档时间: |
|
| 查看次数: |
6510 次 |
| 最近记录: |