gpt4 book ai didi

kotlin - 在kotlin中使用elvis运算符时如何否定 bool 表达式?

转载 作者:IT老高 更新时间:2023-10-28 13:35:05 24 4
gpt4 key购买 nike

我想否定下面的表达式:

return SpUtils.loadEMail()?.isEmpty() ?: false

如果我添加一个 !在表达式之前,比如

return !SpUtils.loadEMail()?.isEmpty() ?: false

IDE(Android Studio)告诉我

Only safe (?.) or non-null asserted (!!.) calls are allowed on a nullable receiver of type kotlin.Boolean?

如何否定这种表达方式?

最佳答案

你有可空引用的问题。

 SpUtils.loadEMail()?.isEmpty()

此代码生成 Boolean? 类型的值,这意味着表达式可以返回 Booleannull 的实例。

我建议使用以下代码来解决您的问题:

return !(SpUtils().loadEMail()?.isEmpty() ?: false);

您尝试否定 Boolean? 而不是 Boolean,即 elvis运算符返回!

关于kotlin - 在kotlin中使用elvis运算符时如何否定 bool 表达式?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34332072/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com