如果我有一个可空的Boolean b,我可以在Java中进行以下比较:
Boolean b = ...;
if (b != null && b) {
/* Do something */
} else {
/* Do something else */
}
Run Code Online (Sandbox Code Playgroud)
在Kotlin中,我可以通过使用!!运算符来实现相同的目的:
val b: Boolean? = ...
if (b != null && b!!) {
/* Do something */
} else {
/* Do something else */
}
Run Code Online (Sandbox Code Playgroud)
然而,!!对我来说使用感觉有点粗略,绕过零安全系统.
有更优雅的方法吗?
编辑似乎我有点过分了.对于局部变量,如Banthar所示,它确实有效.但是,我的布尔b实际上是一个"具有支持字段的属性"(我实际上并没有达到速度,而是强加了它).这是结果: