簡體   English   中英

從 Firestore 獲取一個 ArrayList 並從該列表中選擇 3 個隨機字符串

[英]Get an ArrayList from Firestore and select 3 random Strings from that list

我成功地獲取了存儲在數據庫數組中的字符串( Log.d("TAG", entry.getValue().toString());顯示了數組字符串的值)。

這些字符串是存儲在 Firestore 數組中的自動生成的文檔 ID,因此目標是獲取 3 個 ID,以便我可以進行 3 次查詢以獲取實際文檔。

我現在被困在如何將從 Firestore 獲得的字符串附加到 ArrayList,然后從中獲取 3 個單獨的隨機字符串。

我對 ArrayLists 比較陌生,所以非常感謝任何幫助!

這是我的代碼:

questionRef.document(tvCat1).get().addOnCompleteListener(new OnCompleteListener<DocumentSnapshot>() {
    @Override
    public void onComplete(@NonNull Task<DocumentSnapshot> task) {
        if (task.isSuccessful()) {

            DocumentSnapshot document = task.getResult();

            Map<String, Object> map = document.getData();
            for (Map.Entry<String, Object> entry : map.entrySet()) {
                if (entry.getKey().equals("questions")) {
                    Log.d("TAG", entry.getValue().toString());

// Create function that gets 3 different values from the ArrayList and store them in 3 different Strings

                }
            }
        }
    }
});

這是我構建數據庫的方式。 目前我正在獲取 ArrayList,所以我沒有太多的讀取。 在右側,當我從 ArrayList 中選擇了 3 個隨機文檔 ID 時,您可以看到我想要查詢的文檔:

在此處輸入圖片說明

我找到了一種實現首選結果的方法。 我發布了這個現有問題的答案,以防止發布相同的答案。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM