Java 如何检查firebase数据库中是否存在值-android

Java 如何检查firebase数据库中是否存在值-android,java,android,database,firebase,unique,Java,Android,Database,Firebase,Unique,我刚通过Android(Java)接触firebase,想知道如何检查以下格式的数据库中是否已经存在用户: gdb-2fbgg{ users{ Michael{ age: 20 height: 150 name: Michael } Bob{ age: 20 h

我刚通过Android(Java)接触firebase,想知道如何检查以下格式的数据库中是否已经存在用户:

    gdb-2fbgg{

      users{


         Michael{
              age: 20
              height: 150
              name: Michael
                }


         Bob{
              age: 20
              height: 150
              name: Bob
                }
       }
}
例如,按下一个按钮,我想检查firebase,看看用户名“Michael”是否存在(一级Michael,而不是对象Michael中的“Michael”)

谢谢

在onDataChange中使用带有SingleValueEvent的
.child(“Michael”).exists()
方法或
.hasChild(“Michael”)

DatabaseReference root = FirebaseDatabase.getInstance().getReference();
DatabaseReference users = root.child("users");
users.addListenerForSingleValueEvent(new ValueEventListener() {
        @Override
        public void onDataChange(DataSnapshot snapshot) {
            if (snapshot.child("Michael").exists()) {
                // run some code
            }else{

            }
        }

        @Override
        public void onCancelled(DatabaseError databaseError) {

        }
    });

根据您在onCreate()中的偏好,使用delay声明hander,并从这里调用一个方法

        Handler h = new Handler();
        h.postDelayed(new Runnable() {
            @Override
            public void run() {
                ok();
            }
        },3000);
然后创建这个方法体

public void ok(){
    Toast.makeText(this, "Count is : "+adapter.getItemCount(), Toast.LENGTH_SHORT).show();
}

现在您将在指定的延迟后获得count

非常感谢您的帮助!现在请理解:)我在延迟后调用了此方法,因为如果我立即在onCreate中调用,则将显示默认值,即0