在hashmap中查找密钥

时间:2013-05-12 09:02:45

标签: java hashmap key

我创建了一个带有Color Objects作为键的hashmap。我的源代码如下所示:

HashMap<Color,Integer> hm = new HashMap<Color,Integer>();

现在我想检查HashMap中是否已有Color对象作为键。所以我试过这个:

if (hm.get(colorObject) != null){

不幸的是,它返回false,尽管颜色是相同的。我在控制台中打印颜色,始终为java.awt.Color[r=254,g=0,b=0]。我还尝试了containsKey中的方法HashMap

那有什么不对?如何检查hashmap中是否有Object?

2 个答案:

答案 0 :(得分:2)

尝试if(hm.containsKey(colorObject))

答案 1 :(得分:0)

我试过了:

final Map<Color, Integer> colors = new HashMap<>();
colors.put(new Color(3030), 1);
System.out.println(colors.get(new Color(3030)));

,输出为1,正如预期的那样。因此,您的问题并不像您在问题中确定的那样一般。