gpt4 book ai didi

javascript - Java 8 Lambdas 与 JavaScript 中的自执行函数

转载 作者:塔克拉玛干 更新时间:2023-11-03 04:48:34 26 4
gpt4 key购买 nike

在 JavaScript 中,存在创建匿名函数并立即调用它的常见模式。

称为 Self-executing anonymous functionimmediately-invoked function expression .

对于 Java 8 lambda,是否有复制此行为的标准方法?

类似于(伪代码):

(() -> doSomething())()

This question问基本上相同的问题,但对于 Java 7。我明确地寻找利用 lambdas 的构造。

最佳答案

也不能不声明类型。由于 Java 是一种静态类型语言,并且函数不是一等公民,因此编译器需要知道您的 lambda 是什么类型。函数不能只是自由 float ,它总是需要与类或类的实例相关联。

Runnable r = () -> {
System.out.println("Hello world!");
};
r.run();

但是:您可以将 lambda 转换为 Runnable 类型,并向编译器提示您使用哪种 @FunctionalInterface '正在实现:

((Runnable)() -> {
System.out.println("Hello world!");
}).run();

或者没有大括号,这使得它成为一个单行:

((Runnable)() -> System.out.println("Hello world!")).run();

我想这与您所能达到的差不多!

关于javascript - Java 8 Lambdas 与 JavaScript 中的自执行函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38122121/

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