增加hashmap java的值

时间:2014-02-24 22:39:13

标签: java hashmap

我有一个地方的哈希地图:

HashMap <String, Integer> places = new HashMap <String, Integer>();
places.put("London",0);
places.put("Paris",0);
places.put("dublin",0);

在这些地方,我有一个地方的关键字以及该地方在文本中出现的次数的值。

说我有一个文本:

  1. iloveLondon
  2. IamforLondon
  3. allaboutParis
  4. 哪些也存储在hashmap中:

     HashMap <String, Integer> text = new HashMap <String, Integer>();
    

    我有一个条件语句来检查地点是否在文本中(忽略大写和小写:

    for (String p: places):
    {
       for(String t : text):
          if t.tolowercase().contains(p.tolowercase())
          {
            //then i would like to increment the value for places of the places hashmap
          }
    }
    

    在此示例中,输出应为: 伦敦,2 巴黎,1 都柏林,0

    我得到了一切,除了输出值并递增它,有什么建议吗?

1 个答案:

答案 0 :(得分:1)

要增加一个值,您需要做的就是:

places.put("London",places.get("London")+1);

如果地图不包含“London”,则get将返回null,以处理您需要执行的操作:

Integer value = places.get("London");
if (value == null) {
   value = 1;
} else {
   value += 1;
}

places.put("London", value);