如何获取HashMap在Android中循环java的内容?

时间:2011-11-04 15:43:06

标签: java android arrays loops hashmap

我有这个:

Map<Integer, String[]> strs = new HashMap<Integer, String[]>(); 
for (int population = 0 ; population < 20 ; population++) {

strs.put(0, morning_food);
strs.put(1, snack1_food);
strs.put(2, lunch_food);
strs.put(3, snack2_food);
strs.put(4, nite_food);

for (String[] value : strs.values()) {
    for (String val : value) {
        Log.d("", val);

    }
}

}

这将显示strs的内容20次,我怎样才能获得第一个或第十四个或者其他?我已经尝试将它保存到数组,但它总是显示最后的strs我想要的任何索引,任何解决方案? THX

2 个答案:

答案 0 :(得分:1)

当您使用Map.put时,它将覆盖已与该关键字关联的任何值。当您致电Map.put(0, ...) 20次时,您仍然只有一个与关键字0相关联的值,最新值传递给put

如果您需要存储与单个密钥关联的20个不同值,请使用Guava的Multimap

Multimap

答案 1 :(得分:-1)

如果您想以设定顺序循环播放

,请使用LinkedHashMap