gpt4 book ai didi

kotlin 逆 bool 安全转换

转载 作者:行者123 更新时间:2023-12-05 00:14:19 29 4
gpt4 key购买 nike

假设我有一个对象响应。现在我想检查一个 bool 变量,success,在 Response 下并做一个早期返回是 response 不成功。

if(response == null || !response.success){
return;
} //Java version

现在我想使用 Kotlin 的空安全检查,如下所示
if(response?.success ?: true){
return
}

如果我没有错,如果 response 或 success 为空,我们将在 if 条件中返回 true。但是,如果 response.success 不为 null 且等于 true,我们仍然会从函数中返回,这不是我想要的。我该如何纠正这种情况?

最佳答案

我认为你必须做

if(!(response?.success ?: false)){
return // null or failed
}

这相当于你的java版本。

但请注意:如果 null检查版本更容易阅读。你也可以在 Kotlin 中使用它

你也可以翻转条件
response?.success?.let {
// do something when success
}

see the Elvis operator doc for more info

关于kotlin 逆 bool 安全转换,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47213757/

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