我遇到了需要帮助的问题。我的HashSet
包含char[]
。问题是我无法使用方法contains()
检查是否存在值,即使HashSet
中存在该值,它也会返回false。
如何解决此问题?
答案 0 :(得分:7)
您无法在char[]
中使用HashSet
,因为hashCode()
的{{1}}和equals
的实施是基于身份的,而不是内容 - 基于 - 换句话说,如果两个char[]
数组具有相同的内容,这并不意味着它们的哈希码是相同的。请改用char[]
。