我有HashMap 1,其中包含5个键,所有键都有Hashmaps作为值。我想将键/值对添加到这些子映射。
map1.get(subCategoryMap).put(newKey, newValue);
我的想法是:
map1.get(subCategoryMap);
返回另一个地图。我可以将这一行分为两行,并具有:
map2 = map1.get(subCategoryMap);
map2.put(newKey, newValue);
但是我更愿意一步一步来做。这就是为什么我要尝试
map1.get(subCategoryMap).put(newKey, newValue);
这是行不通的(不喜欢对象上的.put())。是否可以访问子地图并像上面一样在同一行代码中添加到子地图,还是需要将其分成两行?
最佳答案
使用泛型,您可以:
Map<String, Map<String, String>> map1 = ...
map1.get(category).put(subcategory, value);
如果地图不是通用的:
Map map1 = ...
((Map)map1.get(category)).put(subcategory, value);