我最初使用
构建了一系列嵌套ConcurrentHashMap
private final ConcurrentHashMap<String, Object> allInOne =
new ConcurrentHashMap<String, Object>()
随后
ConcurrentHashMap<String, Object> accountMap =
(ConcurrentHashMap<String, Object>)allInOne.get(account);
accountMap.put("subAccounts", new ConcurrentHashMap<String, Object>());
ConcurrentHashMap<String, Object> subAccountMap =
(ConcurrentHashMap<String, Object>)accountMap.get(subAccount);
subAccountMap.put("subAccountData", new ConcurrentHashMap<String, Object>());
我想循环浏览subAccountMap
,因此我可以从subAccountData
获取特定值。
我已经尝试了来自documentation的所有返回的Enumeration
和Set
,但是我无法使其工作,因为我仍然不熟悉Java想办法。请告诉我如何。
(我知道我正在做的是不好的做法,因为许多伟大的堆叠器向我展示了here和here,但我想要做的就是快速获得一个正常工作的原型并清理干净完成后的代码)
答案 0 :(得分:1)
你的意思是这样的吗?
ConcurrentMap subAccounts = allInOne.get(account).get("subaccounts");
for (String key : subAccounts.keySet()) {
Object subAccountObject = subAccounts.get(key);
}