Java中如何实现自定义HashSet呢?
HashSet简介
HashSet实现
不允许重复值Set接口
HashSet不是同步的
也不是线程安全
当向HashSet中添加任何重复元素时
add()方法返回false
并且不允许向HashSet添加重复元素
===============================
下文笔者将根据自定义一个HashSet
如下例所示
例
import java.util.*;
public class CustomHashSetTest extends AbstractSet {
private HashMapmap = 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 iterator() {
return map.keySet().iterator();
}
@Override
public int size() {
return map.size();
}
}
----运行以上代码,将输出以下信息-----
England
Australia
India
版权声明
本文仅代表作者观点,不代表本站立场。
本文系作者授权发表,未经许可,不得转载。


