我有一个以下问题我有两个列表,我在Set中添加了两个列表,但它不允许重复对象..是否设置检查对象内部的重复项?
public static void main(String[] args)
{
Set<List<String>> set = new HashSet<>();
List<String> list = new ArrayList<String>();
list.add("Hariom");
set.add(list);
List<String> list1 = new ArrayList<String>();
list1.add("Hariom");
set.add(list1);
System.out.println(set.size());
}
Run Code Online (Sandbox Code Playgroud)
印刷1
设置工作正常,它会检查重复甚至在对象内?
当您添加新元素到HashSet,hashCode
并且equals
该元素被用来确定是否相同的元素已经在Set.因此,如果两个列表相等,则只能将一个列表添加到HashSet中.
如果两个列表具有相同数量的元素并且在迭代这两个列表时,则认为两个列表相等.因此,你的两个名单是平等的.