Kotlin 检查是否为null并执行某些操作
我是Kotlin的新手,我正试图弄清楚如果变量为空,该如何做。这就是我想做的Kotlin 检查是否为null并执行某些操作,kotlin,null-check,Kotlin,Null Check,我是Kotlin的新手,我正试图弄清楚如果变量为空,该如何做。这就是我想做的 private var loggedInUser: User? = null fun createActivity(activity: Activity) { loggedInUser?.activities?.put(activity.id, activity) //set loggedInUser.activities = hashMapOf() if null } 这是用户类 data cla
private var loggedInUser: User? = null
fun createActivity(activity: Activity) {
loggedInUser?.activities?.put(activity.id, activity)
//set loggedInUser.activities = hashMapOf() if null
}
这是用户类
data class User(
val firstname: String = "",
val lastname: String = "",
val email: String = "",
val password: String = "",
val id: String = UUID.randomUUID().toString(),
val activities: MutableMap<String, Activity> = hashMapOf())
数据类用户(
val firstname:String=“”,
val lastname:String=“”,
val电子邮件:String=“”,
val密码:String=“”,
val id:String=UUID.randomUUID().toString(),
val活动:MutableMap=hashMapOf())
根据您对用户
类的定义,如果未提供活动
参数的值,它将使用默认值。因为将永远不会返回null,所以您不必担心这一点。此外,activities
是一个val
而不是一个可为空的类型,因此如果您有一个非空的用户
,那么您就有一个非空的activities
如果希望在结果为空时设置某个值,请查看:
如果该调用链上的任何值null
,它将使用?:
后面提供的值,否则它将返回左侧给定的值
当然,这是最惯用的方式。你也可以这样做:
if (activities == null) {
// something
}
或任何其他传统的空检查
if (activities == null) {
// something
}