Set接口有三种:HashSet是其一种:实现Set接口,但不保证set的迭代顺序。
##老师原话:
•使用HashSet存储自定义类对象时,可以在自定义类中重写equals和hashCode方法避免“真实”对象被多次存入,主要原因是集合内不允许有重复的数据元素,在集合校验元素的有效性时(数据元素不可重复),需要调用equals和hashCode验证。
•HashSet集合对象如何判断数据元素是否重复:
检查待存对象hashCode值是否与集合中已有元素对象hashCode值相同,如果hashCode不同则表示不重复, 如果hashCode相同再调用equals方法进一步检查,equals返回真表示重复,否则表示不重复。
##创建HashSet对象:HashSet<数据类型>变量名=new HashSet<数据类型>();
方法一:add(Object obj):向Set集合中添加元素,添加成功返回true,否则返回false
二:.size() :返回Set集合中的元素个数
三:remove(Object obj) : 删除Set集合中的元素,删除成功返回true,否则返回false。
四:isEmpty() :如果Set不包含元素,则返回 true ,否则返回false
五:clear() : 移除此Set中的所有元素
六:iterator() :返回在此Set中的元素上进行迭代的迭代器
七:contains(Object o):如果Set包含指定的元素,则返回 true,否则返回false