HashSet实现Set接口,该接口不允许重复值。 HashSet不同步并且非线程安全。当我们可以向 HashSet 添加任何重复元素时,add() 方法会返回 false,并且不允许向 HashSet 添加重复元素.
语法
public class HashSet<E> extends AbstractSet<E> implements Set<E>, Cloneable, Serializable
示例
import java.util.*; public class CustomHashSetTest extends AbstractSet@H_502_38@ { private HashMap<Object, Object> map = null; private static final Object tempObject = new Object(); public CustomHashSettest() { map = new HashMap<>(); } public boolean add(Object object) { return map.put(object, tempObject)==null; } public static void main(String[] args) { CustomHashSetTest test = new CustomHashSettest(); test.add("India"); test.add("Australia"); test.add("England"); test.add("Australia"); for(Object object : test) { System.out.println(object.toString()); } } @Override public Iterator@H_502_38@ iterator() { return map.keySet().iterator(); } @Override public int size() { return map.size(); } }
输出
England Australia India
以上就是我们如何在 Java 中实现自定义 HashSet?的详细内容,更多请关注编程之家其它相关文章!
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。