为了账号安全,请及时绑定邮箱和手机立即绑定

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

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

森林海 2022-12-21 15:21:28
将变量分配给函数调用实际上是调用该函数还是只是存储它(以便它可以被调用)?例如:val userData = GraphRequest.newMeRequest(    accessToken,    object : GraphRequest.GraphJSONObjectCallback {        override fun onCompleted(`object`: JSONObject?, response: GraphResponse?) {            Log.d(TAG, `object`.toString())        }    })实际上打电话GraphRequest.newMeRequest()?
查看完整描述

2 回答

?
温温酱

TA贡献1752条经验 获得超4个赞

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

通常,只要您在函数名称(或 lambda)后看到括号,就会调用该函数。

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

更多信息在这里


查看完整回答
反对 回复 2022-12-21
?
德玛西亚99

TA贡献1770条经验 获得超3个赞

是的,这将调用该GraphRequest.newMeRequest(..)方法并userData立即将结果分配给。如果您希望稍后初始化该字段,但仅在首次访问该字段时才进行初始化,请使用惰性委托

val userData by lazy { /* call method */ }


查看完整回答
反对 回复 2022-12-21
  • 2 回答
  • 0 关注
  • 58 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信