0

我是 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,每次它都应该根据频率和幅度生成音调,并询问用户是否听到了这个音调。如果是,那么我们移动到哈希图的下一个条目,如果不是,那么我们增加幅度并使用增加的幅度再次生成音调,并再次询问用户相同的问题。

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

任何人都可以帮忙吗?

编辑:

这是迭代代码:

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

1 回答 1

0

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

for(int key:hashMap.keySet())
{
    int val = hashMap.get(key)-1;
    do
    {
        val++;
        //Play sound    
    }while(!didYouHereItDialog());
    hashMap.put(key,val);
}
于 2013-08-02T13:58:37.270 回答