在Android中迭代HashMap的问题

时间:2013-08-02 13:49:45

标签: java android hashmap

我是Android开发的新手,我需要一个提示来找到解决问题的方法。

我有一个HashMap,其中一些频率为keys,幅度为values

private Map<Integer, Integer> hashMap = new HashMap<Integer, Integer>();
hashMap.put(20, 32767);
hashMap.put(32, 32767);
hashMap.put(64, 32767);
hashMap.put(125, 6000); 

我希望系统迭代这个hashmap,并且每次它应该根据频率和幅度产生音调,并询问用户是否听到这种音调。如果是,那么我们移动到hashmap的下一个条目,如果不是,那么我们递增幅度并再次以增加的幅度生成音调并再次向用户询问相同的问题。

我创建了一个迭代哈希映射条目的for循环,并且还使用了Iterator,但问题是它显示了第一次迭代中的所有警报。

任何人都可以提供帮助吗?

修改

这是迭代代码:

for (Map.Entry<Integer,Integer> entry : hashMap.entrySet()) {
    freqOfTone = entry.getKey();
    amplitude = entry.getValue();
    startCalibration();
}

1 个答案:

答案 0 :(得分:0)

大概你想用这样的东西吗?

for(int key:hashMap.keySet())
{
    int val = hashMap.get(key)-1;
    do
    {
        val++;
        //Play sound    
    }while(!didYouHereItDialog());
    hashMap.put(key,val);
}