如何在 Java 中的 lambda 表达式中使用 Function 和 BiFunction 接口?


**Function** 接口是一个**预定义函数接口**, 可用作**lambda** **表达式** 或**方法** **引用** 的赋值目标。它接受一个**单个** 参数, 并通过调用 **apply()** 方法返回结果。而 **BiFunction** 接口也是一个**预定义函数接口**, 接受**两个参数**并返回一个结果。它类似于**Function** 接口, 只是它接受两个参数。

语法

@FunctionalInterface
public interface Function<T, R>

@FunctionalInterface
public interface BiFunction<T, U, R>

示例

import java.util.function.BiFunction;
import java.util.function.Function;

public class SampleFunctionBiFunctionTest {
   public static void main(String[] args) {
      Function<Integer, Integer> printNumber = a -> a*10;
      System.out.println("The number is: "+ printNumber.apply(10));

      BiFunction<Integer, Integer, Integer> add = (a, b) -> a+b;
      System.out.println("The addition of two numbers are: "+ add.apply(3,2));
   }
}

输出

The number is: 100
The addition of two numbers are: 5

更新日期: 2020 年 7 月 13 日

2K+ 浏览量

开启您的职业生涯

完成课程获得认证

立即开始
广告
© . All rights reserved.