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

Zor*_*gan 0 java kotlin

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

例如:

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

    }
)
Run Code Online (Sandbox Code Playgroud)

实际上打电话GraphRequest.newMeRequest()

gid*_*dds 5

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

\n\n

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

\n\n

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

\n\n

更多信息请点击这里

\n