- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
所以我只是在玩 kotlin,无法解决这个问题。
fun itsAfunction() = 10
fun check(function:()->Int):Int{
return function() + 9
}
val result = check(itsAfunction)
为什么我不能在函数检查中传递一个函数?
如果我做了这样的事情,这将被接受
val result = check({itsAfunction})
问题是函数和 lambda 有什么区别?我总是认为两者是一样的,但在这种情况下却不是。
谢谢
最佳答案
如果你想将一个类的函数作为参数传递,你应该使用函数引用(也称为可调用引用/函数文字)。
val result = check(::itsAfunction)
但以下内容是等效的 (afaik):
val result = check { itsAfunction() } //<-- enclosing () is omitted because trailing lambda
如果您将check
函数设为内联
:
inline fun check(func: () - > Int) = func() + 9
关于kotlin - 对 lamda 和函数的困惑,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51349787/
zeta 在 critic 方法中代表什么?我相信它会跟踪状态- Action 对并表示资格跟踪,这是状态- Action 的临时记录,但 zeta 究竟代表什么以及它在 C++ 中的外观如何(例如
我想列出一个方法调用的所有方法。 void create() throws MyException { System.out.println("TEST"); of("String")
所以我只是在玩 kotlin,无法解决这个问题。 fun itsAfunction() = 10 fun check(function:()->Int):Int{ re
想知道是否可以让网络应用程序将文件 (userid.input.json) 上传到 Amazon S3,这会触发一个 lambda 函数来读取文件、进行一些处理并保存结果作为另一个 (userid.o
假设我有一个包含 Button 和 Spinbox 的 Widget。单击按钮时,我希望发出 Spinbox 的值。 我看到了两种可能的方法: 要么我可以创建一个私有(private)成员函数 //.
java 8 lamda Stream的Collectors.toMap 参数 使用toMap()函数之后,返回的就是一个Map了,自然会需要key和value。 toMap()的第一个参数就是用来生
fun theItemDTO.toDomainModel( domainOrderId: String, pIds: List = emptyList() ): theItem = l
我有一个 android 项目,它依赖于一个库模块。我的模块中有一个这样的接口(interface): public interface SimpleAnimationListener exte
我有getter方法 @JsonInclude(Include.NON_NULL) public Date getVerifiedFrom() { if(invoices == null ||
假设,我有一个卷积层的 10x10x4 中间输出,我需要将其分成 100 个 1x1x4 卷,并对每个卷应用 softmax,以获得 100 个输出网络。有没有办法在不使用 Lambda 层的情况下完
我写了这样的 JavaFX 摆弄: MenuItem menuItem1 = new MenuItem("Item 1") menuItem1.setOnAction(e -> {
我在研究 lambda 表达式时遇到了这个问题: #include using std::cout; int main() { auto lam = [](int a){ cout #inc
考虑下面的模板函数 sort(...)。这是一个围绕 std::sort 的包装函数。目的是在对用户定义类的 vector 进行排序时提供更好的语法。第一个参数是要排序的 vector 。第二个参数是
TLDR header authorization 没有随 apollo 一起发送。这导致 You do not have the appropriate capabilities to perfor
我在 API 网关之后使用 NodeJs Lambda。 var AWS = require('aws-sdk'); const cognito = new AWS.CognitoIdentitySe
我每天晚上 8 点使用 chalice 和 lambda 函数安排 ec2 实例关闭。 我已经配置了 chalice ,但无法使用 chalice 触发或集成 python 脚本 导入 boto3 #
我正在学习 Java 8 中的 Lambda 表达式和方法引用,发现我们可以通过使用“super”来引用方法的父类(super class)版本,如: super ::名称 但是当我这样做时,它不起作
如何将 CommaDelimitedList 参数转换为字符串,以便将其作为环境变量传递给 Lamda 函数? 下面是示例 CommaDelimitedList 参数,其中包含 AWS 区域列表,我需
我使用的第三方 API 返回一个类型为 int[] 的数组。我们将其称为 readWords: int[] readWords 然而,这个重新调整的数组应该是一个 uint[]。所以我正在进行以下转换
我是一名优秀的程序员,十分优秀!