2015-10-07 91 views
1

比方說,我有以下數據結構是這樣的:編輯值

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

,看起來是這樣的:

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

如何我可以爲每個家庭的每種食物的每種顏色優雅地插入「紅色」顏色嗎?

+0

重構使用'Food'類,然後使用流或Groovy閉包迭代器? – chrylis

回答

2

你可以這樣說:

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

順便說一句,你不應該使用原始類型LinkedHashMap。它應該是LinkedHashMap<String, String>(我認爲)。

我也認爲你應該使用兩個字段namecolor而不是Map