KeyStroke类作为HashMap中的键

时间:2012-05-04 17:49:32

标签: java hashmap keystroke

有关重写equals()和hashCode()的几个答案描述了对两者的需求以及将它们用作Java中HashMap中的键的应用。我的问题是,Java KeyStroke类是否可以安全地作为HashMap中的键?此外,所以我不讨厌并继续问这些问题,如何找出所提供的类(我认为KeyStroke是由Swing提供)在这种情况下是否可以安全使用...即。覆盖equals()和hashCode()?

提前感谢!

2 个答案:

答案 0 :(得分:3)

查看equalshashCode是否被覆盖的方法是查看APIhashCodeequalsKeyStroke未被覆盖,但它们位于AWTKeyStroke。实际上,AWTKeyStroke#hashCode表示:

  

[这个对象]是一个很好的选择,作为哈希表中的索引值。

答案 1 :(得分:2)

最好是HashMap键覆盖equals和hashCode并且 不可变 ,如果你检查API,KeyStroke就是。所以它应该没问题。