我需要检查2d char数组的列表/集合是否包含我作为参数传递的另一个2d char数组的精确副本。我的想法是制作一个HashSet
,然后使用contains()
方法,但这不是真的有用;我假设它与我传递方法2D数组有关。如果可能的话,我不想遍历列表中的每个项目,因为这样做太昂贵了。请帮帮我。谢谢!
答案 0 :(得分:3)
这是行不通的,因为数组的hashCode
基于Object
,所以除非你试图找到相同的引用,否则你永远不会得到contains
来评估到true
。
您应该为数组创建一个包装器,override
和hashCode
创建equals
。您可以将Arrays.deepEquals用于此目的