[英]Increment of value in Hashmap<Object,Integer>, Error "Integer cannot be converted to P(object)" Java
我正在尝试增加哈希图中的值。 我正在使用 Java 8 和 Netbeans,所以写了这段代码:
Map<P, Integer>color_match_hash = new HashMap<P, Integer>();
for(int k=0; k<color_match_hash.size(); k++){
if(color_match_hash.get(k).equals(P_Color.get(i))){
color_match_hash.merge(color_match_hash.get(k), 1, Integer::sum);
}
}
P 是一个有 5 个整数的对象。 这是一个简单的算法,我想在其中增加键 (k) 的值并且得到“不兼容的类型:整数无法转换为 P”。 我做错了什么? 我必须补充一点,我尝试了很多方法来增加它,并且在每个方法中我都有相同的消息。 在 Java 中增加 Map 值的最有效方法
您已经创建了一个HashMap
,其键类型为P
,值类型为Integer
。
首先,您像我们对列表或数组所做的那样迭代地图。
其次,这是一个错误的用法 - color_match_hash.get(k)
。 get
方法需要一个数据类型为P
(键)的值。
您可以阅读如何有效地迭代 Java Map 中的每个条目? , 查看迭代地图的不同方法。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.