2012-12-24 38 views
-4

我想檢查一個項目是否在我的播放器(播放器)的清單(HashMap)中。 但這種情況下,寫(在播放器類)containsKey或不工作

this.items.containsKey("beamer") 

不能編譯。我得到的錯誤:

cannot find symbol - method containsKey(java.lang.String) 

我試圖導入java.lang.String或者是java.util.HashMap中,但它確實沒有什麼....對你有所幫助

感謝。

編輯1: 進口:

import java.util.*; 
import java.lang.*; 

編輯2: 我在Player類的開始申報項目。 項目也是一個具有一個屬性的類,一個HashMap以Item作爲值,String作爲鍵。

private Items items = new Items(); 
+5

發佈的代碼塊與進口 –

+3

你的代碼不合拍與你的錯誤獲得。你在哪裏叫'get'? – Makoto

+0

顯示hashmap的聲明 – Kyle

回答

2

項目也有一個屬性,一個HashMap

所以一個HashMap,或項目包含 HashMap中的類。項目不是一個HashMap。所以它沒有任何containsKey()方法。

你需要一個containsKey()方法添加到您的項目類,委託給包含地圖:

public boolean containsKey(Object key) { 
    return this.map.containsKey(key); 
}