У меня есть куча вложенных данных, хранящихся в FirebaseRealTimeDatabase, например:
Я могу получить набор данных, то есть профиль иих соответствующие оценки.
ArrayList<String> profileNameList = new ArrayList();
ArrayList<String> profileStatusList = new ArrayList();
ArrayList<int> scoreList = new ArrayList();
databaseReference.child("players")
.addListenerForSingleValueEvent(new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot dataSnapshot) {
Iterable<DataSnapshot> children = dataSnapshot.getChildren();
for (DataSnapshot child : children) {
Profile profile = child.child("profile").getValue(Profile.class);
Scores scores= child.child("scores").getValue(Scores.class);
profileNameList.add(profile.getName());
profileStatusList.add(profile.getStatus());
scoreList.add(scores.getScore());
}
}
Затем я использую Collections.sort(scoreList)
, чтобы отсортировать оценки по убыванию.Моя задача, однако, заключается в том, как мне снова связать отсортированные оценки (от самого низкого до самого высокого) с профилем игрока, например,
Gavin - 15
Rico - 40
Любая помощь приветствуется.