在另一个 LinkedHashMap 中的 ArrayList 中的 LinkedHashMap 中编辑键的值

Edit Value of a Key in a LinkedHashMap inside an ArrayList that’s inside another LinkedHashMap

假设我有如下数据结构:

LinkedHashMap<String, ArrayList<LinkedHashMap>> foodFamilies = new LinkedHashMap<>(); 

看起来像这样:

{Fruit = [{Name = Apple, 
           Color = }, 
          {Name = Cherry, 
           Color = }], 
 Vegetables = [{Name = Beet,
                Color = }]}

如何为每个家庭的每种食物的每种颜色优雅地插入颜色“红色”?

你可以这样做:

for (List<LinkedHashMap> list : foodFamilies.values())
    for (LinkedHashMap map : list)
        map.put("Color", "red");

顺便说一句,你不应该使用原始类型LinkedHashMap。它应该是 LinkedHashMap<String, String>(我认为)。

我还认为您应该使用带有两个字段 namecolor 的 class,而不是 Map