我有一种情况,我可能会遇到可能的空值,我不希望我的程序崩溃。它只发生在一小部分用户身上,我不完全确定为什么,但我知道正在执行此操作的代码部分。基本上isAchieved()
是一个应该返回一个布尔值的检查,但在少数情况下它返回一个空值。这是 scoreloop 库的一部分,我怀疑该错误可能与他们的代码有关。
而不是强制关闭并退出程序,有没有办法检查这个值是否会返回一个空值,如果是这种情况,只需跳过这部分代码?
if (_achievements[ltc].isAchieved()) {
// Do stuff for 99.9% of users here, but skip if .isAchieved() would force close
}