首页 > 解决方案 > 在 Firestore 中的地图内映射

问题描述

在此处输入图像描述

我有一个获取名为 PUJ 的地图值的代码。

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

是否可以仅获取值:ABC123, YAG916

标签: javaandroidfirebasegoogle-cloud-firestore

解决方案


嵌套地图也是Map<String, Object>,就像文档数据一样。如果你想假设类型,你可以转换它:

Map<String, Object> map = document.getData();
Map<String, Object> puj = (Map<String, Object>) map.get("PUJ");
Set<String> keys = puj.keysSet();
// keys is now a Set that contains both "ABC123" and "YAG916"

但你也应该检查一下instanceof以确保。


推荐阅读