Java 为列表的每个索引引用相同类的不同类对象

Java 为列表的每个索引引用相同类的不同类对象,java,firebase,google-cloud-firestore,Java,Firebase,Google Cloud Firestore,如何为字符串列表的每个索引创建引用相同类的不同类对象?我一直试图使用useradapter和recyclerview向用户显示匹配项,但是,我只显示最后一个匹配项,这是我匹配列表的最后一个索引。我认为问题在于我的用户类对象,您可以在下面看到 readref.get().addOnCompleteListener(new OnCompleteListener<DocumentSnapshot>() { @Override public void onCo

如何为字符串列表的每个索引创建引用相同类的不同类对象?我一直试图使用useradapter和recyclerview向用户显示匹配项,但是,我只显示最后一个匹配项,这是我匹配列表的最后一个索引。我认为问题在于我的用户类对象,您可以在下面看到

readref.get().addOnCompleteListener(new OnCompleteListener<DocumentSnapshot>() {
        @Override
        public void onComplete(@NonNull Task<DocumentSnapshot> task) {
            DocumentSnapshot snapshot = task.getResult();
            if (snapshot.exists()) {

                List<String> matchedid = new ArrayList<>();
                matchedid = (List<String>) snapshot.get("matchlist");

                for (int i = 0; i < matchedid.size(); i++) {
                    User user = new User();

                    if (!matchedid.get(i).equals("default")) {
                        DocumentReference readref2 = usersfragmentstore.collection("users").document(matchedid.get(i));
                        readref2.get().addOnCompleteListener(new OnCompleteListener<DocumentSnapshot>() {
                            @Override
                            public void onComplete(@NonNull Task<DocumentSnapshot> task2) {
                                DocumentSnapshot readsnap2 = task2.getResult();
                                if (readsnap2.exists()) {

                                    user.setId(readref2.getId());
                                    user.setImageURL(readsnap2.getString("imageURL"));
                                    user.setName(readsnap2.getString("name"));

                                    mUsers.add(user);

                                    usersAdapter = new UsersAdapter(getContext(), mUsers, false);
                                    recyclerView.setAdapter(usersAdapter);

                                }
                            }
                        });
                    }
                }

            }
        }
    });
readref.get().addOnCompleteListener(新的OnCompleteListener(){
@凌驾
未完成的公共void(@NonNull任务){
DocumentSnapshot snapshot=task.getResult();
if(snapshot.exists()){
List matchedid=new ArrayList();
matchedid=(List)snapshot.get(“matchlist”);
对于(int i=0;i
这是我的firebase数据库结构

[1]:


如果我错了,请帮助我解决我无法识别的问题。

请将您的数据库结构添加为屏幕截图,并指出您想要获取的确切数据。我已添加了我的数据库结构,但如果您无法获取,请让我解释。我使用firebase firestore数据库,因此其结构是JSON树。我有一个名为“匹配列表”包括索引的用户id,请添加更详细的用户id,并指明您想要获取的确切数据。