HashSet实现了不允许重复值的Set接口。HashSet不是同步的,也不是线程安全的。当我们可以向HashSet添加任何重复元素时,add()方法返回false,并且不允许向HashSet添加重复元素。
语法
public class HashSetextends AbstractSetimplements Set, Cloneable, Serializable
在下面的示例中,我们可以实现自定义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
热门文章
- 动物疫苗价格排行前十的有哪些品种呢 动物疫苗价格排行前十的有哪些品种呢图片
- 1月30日 | 最新Clash/V2ray/SSR/Shadowrocket高速免费节点,最高速度20.7M/S 免费Clash机场订阅地址
- 1月4日 | 最新V2ray/Shadowrocket/SSR/Clash高速免费节点,最高速度19.8M/S 免费Clash机场订阅地址
- 天津市宠物领养中心地址 天津市宠物领养中心地址电话
- 2月13日 | 最新V2ray/SSR/Shadowrocket/Clash高速免费节点,最高速度18.1M/S 免费Clash机场订阅地址
- 3月3日 | 最新SSR/Clash/V2ray/Shadowrocket高速免费节点,最高速度18.5M/S 免费Clash机场订阅地址
- 掌握JavaScript中的迭代器和生成器,顺便了解一下async、await的原理
- 3月11日 | 最新V2ray/Shadowrocket/SSR/Clash高速免费节点,最高速度20.2M/S 免费Clash机场订阅地址
- 1月5日 | 最新V2ray/Clash/Shadowrocket/SSR高速免费节点,最高速度18.1M/S 免费Clash机场订阅地址
- 猫三联妙三多打几针(妙三多猫三联是几针)