Java Firebase检查值
在我的firebase数据库中,我想检查“read”键是否等于“false”,但是,下面的if语句似乎不起作用Java Firebase检查值,java,android,firebase,firebase-realtime-database,Java,Android,Firebase,Firebase Realtime Database,在我的firebase数据库中,我想检查“read”键是否等于“false”,但是,下面的if语句似乎不起作用 ValueEventListener eventListener = new ValueEventListener() { @Override public void onDataChange(DataSnapshot dataSnapshot) { String true3 = "true";
ValueEventListener eventListener = new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot dataSnapshot) {
String true3 = "true";
for(DataSnapshot ds : dataSnapshot.getChildren()) {
if( ( ds.child("read").getValue() == ("false"))){
ds.child("read").getRef().setValue(true3);
}
}
}
@Override
public void onCancelled(DatabaseError databaseError) {}
};
q.addListenerForSingleValueEvent(eventListener);
ds.child(“read”).getValue()
将返回一个对象
,而obj==“false”
将比较引用而不是它们的值,因此请使用
而不是
if( ( ds.child("read").getValue() == ("false"))){
ds.child(“read”).getValue()
将返回一个对象
,而obj==“false”
将比较引用而不是它们的值,因此请使用
而不是
if( ( ds.child("read").getValue() == ("false"))){
我相信它给了我一个NPEthen它只是意味着你的firebase相对路径引用有问题,发布你的DB snapshotahh实际上错误是无法将java.lang.String类型的值转换为Boolean我相信它给了我一个NPEthen它只是意味着你的firebase相对路径引用有问题,发布数据库快照AHH实际上,将java.lang.String类型的值转换为布尔值失败