[英]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.