java - 在 Kotlin 中将函数调用分配给变量

标签 java kotlin

将变量分配给函数调用实际上是调用该函数还是只是存储它(以便准备好调用)?

例如:

val userData = GraphRequest.newMeRequest(
    accessToken,
    object : GraphRequest.GraphJSONObjectCallback {
        override fun onCompleted(`object`: JSONObject?, response: GraphResponse?) {
            Log.d(TAG, `object`.toString())
        }

    }
)

实际上调用GraphRequest.newMeRequest()

最佳答案

是的,该代码首先调用 GraphRequest.newMeRequest() ,并将其结果分配给 userData .

一般来说,只要您在函数名称(或 lambda)后面看到括号,就会调用该函数。

如果您想要对函数的引用而不调用它(例如稍后调用,或者返回或传递给另一个函数),您可以使用 GraphRequest::newMeRequest 。然后,您需要在调用时传递相关参数。

更多信息here .

关于java - 在 Kotlin 中将函数调用分配给变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56373965/

相关文章:

java - Java Regex中matches()和find()的区别

java - 如何在 Nashorn 中访问 super 类成员

java - JsonPath/ jackson : how to deserialize JSON array to a single Object ("[1,2,3]" -> Vector3d instance)?

kotlin - 如何使用 Kotlin 序列化将多态和转换序列化器组合用于嵌套 JSON?

java - java中访问列表元素

java - 按字段过滤自定义 POJO 的 ListView

kotlin - 如何在 Kotlin 中的函数之间传播默认参数?

gradle - 调试库

kotlin - 在TornadoFX中使用工作区时如何使用范围?

android - Kotlin Android 项目无法同步 Gradle 项目