我很难获取数据并将其存储为数组。我只能获得奇怪的字符串,有任何方法可以将其存储为字符串数组吗?以下是我使用的代码。
我能够在Swift中实现此操作,但不确定如何在Android中实现相同的操作。
Swift:
Firestore.firestore().collection("dungeon").document("room_en").getDocument {
(document, error) in
if let document = document {
let group_array = document["dungeon_group"] as? Array ?? [""]
print(group_array)
}
}
Java Android:
FirebaseFirestore.getInstance().collection("dungeon")
.document("room_en").get()
.addOnCompleteListener(new
OnCompleteListener<DocumentSnapshot>() {
@Override
public void onComplete(@NonNull Task<DocumentSnapshot> task) {
DocumentSnapshot document = task.getResult();
String group_string= document.getData().toString();
String[] group_array = ????
Log.d("myTag", group_string);
}
});
控制台输出如下:
{dungeon_group=[3P,紧急,任务挑战,下降,合作,每日,技术,正常]}
Dungeon dungeon = document.toObject(Dungeon.class); List<String> dungeonGroup = dungeon.getDungeon();
翻译:不错的解决方案,不过我认为你应该为新手提供更详细的说明。Dungeon dungeon = document.toObject(Dungeon.class); List<String> dungeonGroup = dungeon.getDungeon();
- King Of The Jungle