在javascript中,常见的模式是创建匿名函数并立即调用它(通常称为自动执行匿名函数或立即调用的函数表达式)。
对于Java8 lambdas,是否有复制这种行为的标准方法?类似于(()-
这个问题基本上问了同样的问题,但是对于Java7。我明确地寻找使用lambdas的结构。
像这样的东西怎么样
((Runnable)(() -> System.out.println("Foobar"))).run();
没有声明类型也是不行的。由于Java是一种静态类型语言,函数不是一等公民,编译器需要知道lambda是什么类型。函数不能只是自由浮动的,它总是需要与类或类的实例相关联。
Runnable r = () -> {
System.out.println("Hello world!");
};
r.run();
但是:您可以将lambda强制转换为Runnable类型,并向编译器提示您正在实现哪种类型的功能接口:
((Runnable)() -> {
System.out.println("Hello world!");
}).run();
或者没有大括号,这使它成为一行:
((Runnable)() -> System.out.println("Hello world!")).run();
我想这是你能得到的最接近的了!
问题内容: 在javascript中,存在创建匿名函数并立即调用它的常见模式(通常称为自执行匿名函数或立即调用的函数表达式)。 使用Java 8 lambda,是否有标准方法可以复制此行为?有点像。 这个问题基本上提出了相同的问题,但是对于Java7。我正在明确地寻找使用lambda的构造。 问题答案: 也不是没有声明类型。由于Java是静态类型的语言,并且函数不是一等公民,因此编译器需要知道la
我经常这样编写JS自动执行匿名函数 但前几天我在某人的代码里看到了这个 有什么不同,推荐哪一种?
本文向大家介绍浅析Javascript匿名函数与自执行函数,包括了浅析Javascript匿名函数与自执行函数的使用技巧和注意事项,需要的朋友参考一下 函数是JavaScript中最灵活的一种对象,这里只是讲解其匿名函数的用途。匿名函数:就是没有函数名的函数。 函数的定义,大致可分为三种方式: 第一种:这也是最常规的一种 第二种:这种方法使用了Function构造函数,把参数列表和函数体都作为字符
关于它有一个很好的问题,但答案涉及的是可运行的,而不是函数。通过Lambdas自动执行匿名函数 在这种情况下,我需要一个自执行函数,它接受一个参数并返回一个结果。这种代码对于计算带有孔的自动生成代码中的值非常有用。 我尝试了以下语法: 但是我得到了一个编译错误: 错误:找不到符号 我看不出这种语法有什么问题。知道如何编写这样的自动执行代码吗?
问题内容: 我想创建一个客户端函数,该函数可以使用客户端变量来接收和执行任意命令。我将使用socket.io从服务器发送这些函数,以发送包含匿名函数的JSON对象,这将是我的命令。它看起来像以下内容: 但是,当我尝试时,客户端接收到一个空的json对象(),然后抛出异常,因为数据不包含任何执行方法。这是怎么了? 问题答案: JSON不支持包含定义/表达式。 相反,您可以做的是使用所需的s 定义一个
我有一个自动执行的函数,它包含很多东西,其中at函数是我想要全局化的。我通常只在全局范围内声明它,但它需要能够引用仅对自执行函数局部的变量。 在不完全去掉自执行函数(从而在全局空间中乱扔变量)的情况下,使函数全局可访问的最佳方法是什么?