map中key值相等 对应value值加1

该博客展示了一个Java程序,用于统计Map中相同Key对应的List<String>中每个元素出现的次数。通过遍历输入Map,将每个元素的计数存储在一个新的嵌套Map中。最后,输出更新后的Map,显示每个元素的计数。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

public static void main(String[] args) {
Map<String, List<String>> input = new HashMap<String, List<String>>();
List<String> list = new ArrayList<String>();
list.add("《狂人日记》");
list.add("《狂人日记》");
list.add("《狂人日记》");
list.add("《狂人日记》");
input.put("小王", list);
Map<String, Map<String, Integer>> maplist = add(input);
System.out.println(maplist.get("小王").get("《狂人日记》"));
}
public static Map<String, Map<String, Integer>> add(
Map<String, List<String>> input) {
Map<String, List<String>> maplist = new HashMap<String, List<String>>();
Map<String, Integer> temp = new HashMap<String, Integer>();
temp.put("《狂人日记》", 0);
Map<String, String> map = new HashMap<String, String>();
map.put("小王", "《狂人日记》");
Map<String, Map<String, Integer>> map2 = new HashMap<String, Map<String, Integer>>();
map2.put("小王", temp);
Set<String> names = map2.keySet();
Set<String> names2 = input.keySet();
for (String str : names) {
for (String str2 : names2) {
if (str.equals(str2)) {
for (String str3 : input.get(str2)) {
temp.put(str3, map2.get(str).get(str3) + 1);
map2.put(str, temp);
}
}
}
}
return map2;
}


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值