一、Set集合简介
Set集合简单来说相当于一个桶,程序可以依次的把多个对象丢进桶中(Set集合)
Set继承于Collection接口,是一个不允许出现重复元素,并且无序的集合,主要有hashSet和TreeSet两大实现类。
二、hashSet
hashSet是Set接口的典型实现,大多数使用Set集合就是使用这个实现类。
hashSet是基于hashmap实现的,默认构造函数是构建一个初始容量为16,负载因子为0.75的hashmap。
放入hashSet中的集合元素实际上是由hashmap中的key来保存的,value存储了一个静态的Object对象。
特点:
1、不能保证元素的排列顺序,也就是无序
2、hashSet不是同步的,也就是非线程安全的,为了防止对外不同步,应该在创建的时候使用Collections.synchronizedSet方法来包装Set