我有一个问题需要帮助。我有一个包含 char[]
的 HashSet
。问题是我无法使用 contains()
方法检查值是否存在,即使 HashSet
中存在该值,它也会返回 false。
我该如何解决这个问题?
最佳答案
你不能使用 char[]
在 HashSet
,自执行hashCode()
和 equals
对于 char[]
是基于身份的,而不是基于内容的——换句话说,如果两个 char[]
数组具有相同的内容,这并不意味着它们的哈希码相同。使用String
而是。
关于Java - 带有 char[] 元素的 HashSet,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16136750/