-3

我想检查一个项目是否在我的播放器 (Player) 的库存 (HashMap) 中。但是这个条件,写在(在 Player 类中)

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 类的开头声明项目。Items 也是一个具有一个属性的类,一个以 Item 为值、以 String 为键的 HashMap。

private Items items = new Items();
4

1 回答 1

2

Items 也是一个具有一个属性的类,一个 HashMap

所以Items一个HashMap,或者包含一个HashMap。Items不是HashMap。所以它没有任何containsKey()方法。

您需要向containsKey()您的 Items 类添加一个方法,该方法代表包含的 Map:

public boolean containsKey(Object key) {
    return this.map.containsKey(key);
}
于 2012-12-24T18:41:05.383 回答