如何使用Iterator获取此json结构中的键? 如果用户是 Harry Anderson ,那么逻辑将是,我想从 person0 中搜索到 person6 的值,如果找到该值我希望得到它的密钥,在这种情况下是 -KaSeO5n2xCl2sEnDpSi 。我不知道这是否可以通过Iterator实现,但如果还有其他方法可以实现,请建议。感谢。
答案 0 :(得分:2)
ref.child("chat/chat-participants").addListenerForSingleValueEvent(new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot dataSnapshot) {
ArrayList<String> keyList = new ArrayList<>();
for (DataSnapshot child : dataSnapshot.getChildren()) {
Log.e("!_@@_Key::>", child.getKey());
keyList.add( child.getKey());
}
// your all keys are store in KeyList ArrayList
}
@Override
public void onCancelled(FirebaseError firebaseError) {
Log.e("!_@@@_ERROR_>>", "onCancelled", firebaseError.toException());
}
});
答案 1 :(得分:0)
你可以尝试
FirebaseDatabase database = FirebaseDatabase.getInstance();
DatabaseReference chatRef = database.getReference("chat").child("chat-participants");
chatRef.addListenerForSingleValueEvent(
new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot dataSnapshot) {
//do stuff iteration
}});
我认为没有明确的方法来实现它