在Java中如何使用lambda和方法引用实现LongFunction?
LongFunction<R>是在java.util.function包中定义的内置函数接口。此函数接口需要long值参数作为输入并生成结果。LongFunction<R>接口可以用作lambda表达式或方法引用的赋值目标。它只包含一个抽象方法:Apply()。
语法
@FunctionalInterface
public interface LongFunction<R> {
R apply(long value)
}示例
import java.util.function.LongFunction;
public class LongFunctionTest {
public static void main(String[] args) { LongFunction<Long> function1 = (long i) -> { // lambda 表达式
return i + i;
};
System.out.println("使用Lambda表达式的结果: " + function1.apply(10));
LongFunction<Long> function2 = LongFunctionTest::add; //方法引用
System.out.println("使用方法引用的结果: " + function2.apply(20));
}
static long add(long i) {
return i + i;
}
}输出结果
使用Lambda表达式的结果: 20 使用方法引用的结果: 40