gpt4 book ai didi

android - "callback(value)"和 "callback.invoke(value)"有什么区别?

转载 作者:行者123 更新时间:2023-12-05 03:42:45 52 4
gpt4 key购买 nike

我正在尝试在我的应用中使用一些回调,它与 "callback(value)""callback.invoke(value)" 一起工作正确调用回调。

我想知道“回调(值)”是否只是一个缩短版本,或者这两种调用回调的方式有区别吗?

我的函数带有两个 callback 参数(但只需要 1 个并且可以在没有其他参数的情况下工作):

    fun signIn(username: String, password: String,  callback: (Response?) -> Unit) {

val reqBody =
"{\"what_to_do\":\"sign_user_in\",\"username\":\"$username\",\"password\":\"$password\"}"

val request = createRequest(reqBody)

myHttpClient.newCall(request).enqueue(object : Callback {
override fun onResponse(call: Call, response: Response) {
callback(response)
callback.invoke(response)
}
}

override fun onFailure(call: Call, e: IOException) {
// Failed request..
}
})
}

最佳答案

invoke是 Kotlin 中 operator 函数的名称,对应于函数调用 () 运算符。使用其运算符形式 () 或更长的函数形式 invoke() 之间没有区别。您甚至可以使用 IDE Intent 操作在两者之间进行转换。

关于android - "callback(value)"和 "callback.invoke(value)"有什么区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/67107944/

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