我在Android Studio中有这段代码:
val newUser = !intent.hasExtra("newUser")
val userData = intent.getParcelableExtra("newUser") ?: UserData()
此代码存在问题。如果在意图中存在额外的UserData
,并且其密钥为" newUser",newUser
变为false
,但userData
变为UserData
的新实例。
我正在寻找这样的东西:
val userData = intent.getParcelableExtra("newUser") ?: {
newUser = true
UserData()
}
我认为这不起作用但有办法吗?
答案 0 :(得分:8)
您可以将块包装在run
函数中:
val userData = intent.getParcelableExtra("newUser") ?: run {
newUser = true
UserData()
}