[英]Unboxing of cameraCharacteristics may produce Nullpointer Exception and FindBugs
[英]unboxing of snapshot.getvalue(double.class) may produce nullpointer exception
Snapshot.getValue 正在產生 null 指針異常,我應該如何解決這個錯誤?
DatabaseReference offsetRef = FirebaseDatabase.getInstance().getReference(".info/serverTimeOffset");
offsetRef.addValueEventListener(new ValueEventListener() {
@Override
public void onDataChange(@NonNull DataSnapshot snapshot) {
double offset = snapshot.getValue(Double.class);
snapshot.getValue(Double.class)
返回Double
object,而不是double
原語。 在拆箱之前,您應該檢查此 object 的 null。 當快照中不存在數據時,它可以是 null。
Double offset = snapshot.getValue(Double.class);
if (offset != null) {
double o = offset;
}
else {
// figure out what you want to do when the data is not there
}
有幾個選項。 你可以寫在try...catch
double offset;
try {
offset = snapshot.getValue(Double.class);
}catch(Exception e){
offset = 0; //Default value
}
另一種選擇是使用三元運算符
double offset = snapshot.getValue(Double.class) != null ? snapshot.getValue(Double.class) : 0;
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.