0

我想要一个包含一些(可能很多)哈希图的向量,其中的一个字符串作为键,一个整数作为值。如何检查我的 Hashmaps 向量是否已经包含某个键,如果是,则将相应键的值加 1?

我想要完成的是计算一个单词在文档中出现的次数。我的想法是我可以使用 HashMap 来存储单词出现的次数。但是我想在将新地图添加到我的矢量之前检查我的矢量是否已经包含带有给定单词的地图。如果我的向量确实包含带有给定单词的映射,则增加值字段(在本例中为 numOfTimesOccurredSoFar)。

这可能吗?

4

2 回答 2

2

除非我误解了您想要做什么,否则当您可以使用单个地图将单词映射到字数时,我认为没有理由将地图存储在向量中。对于每个单词,检查映射是否将该单词作为键,如果是,则将映射到该单词的值加 1。如果该单词尚未在地图中,请添加一个新的键值对。

于 2012-11-09T20:53:06.867 回答
0
import java.util.Map;
import java.util.TreeMap;
public class So13315440 {
    void add(String word) {
        if(map.containsKey(word))
            map.put(word,map.get(word)+1);
        else map.put(word,1);
    }
    void run() {
        add("foo");
        add("foo");
        add("bar");
        System.out.println(map);
    }
    public static void main(String[] args) {
        new So13315440().run();
    }
    Map<String,Integer> map=new TreeMap<String,Integer>();
}
于 2012-11-09T21:09:45.963 回答