gpt4 book ai didi

lambda - 这个 JAVA 8 lambda 方法是如何工作的?

转载 作者:行者123 更新时间:2023-12-01 12:14:18 24 4
gpt4 key购买 nike

这是 Java 8 的 lambda 方法,它在 JAVA 7 中的等价物是什么?

public interface Function<T, R> {

static <T> Function<T, T> identity() {
return t -> t;
}

R apply(T t);
}

所以它只是一个 JAVA 接口(interface),但是 t -> t 是如何使用的?

最佳答案

该 lambda 表达式等效于以下匿名类实例:

<T> Function<T, T> identity() {
return new Function<T, T> () {
public T apply (T t) {
return t;
}
};
}

lambda 表达式使您无需指定要实现的接口(interface)方法的名称及其参数类型,因为它们仅用于实现功能接口(interface),它只能有一个抽象方法,因此通过声明目标接口(interface)类型(本例中为 Function<T, T>),很清楚您正在实现哪种方法。

当然,Java 7 没有静态接口(interface)方法,因此您无法在接口(interface)中包含该方法。

关于lambda - 这个 JAVA 8 lambda 方法是如何工作的?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49422709/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com