簡體   English   中英

Hashmap 中的值遞增<Object,Integer> , 錯誤“整數無法轉換為 P(object)” Java

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

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM