HashSet實現的接口有Serializable, Cloneable, Iterable<E>, Collection<E>, Set<E>,大概就能夠知道有什麼功能和什麼方法啦。安全
HashSet 是一個沒有重複元素的集合,由HashMap實現的,不保證元素的順序,容許使用 null 元素。
HashSet是非線程安全的。想獲取線程安全的能夠使用 Set s = Collections.synchronizedSet(new HashSet(...));併發
請注意,迭代器的快速失敗行爲沒法獲得保證,由於通常來講,在存在不一樣步的併發修改時,不可能作出任何硬性保證。線程
1.構造一個新的空集;後備HashMap實例具備默認初始容量(16)和加載因子(0.75)對象
2.構造一個新的空集;後備HashMap實例具備指定的初始容量和默認加載因子(0.75)blog
3.構造一個新的空集;後備HashMap實例具備指定的初始容量和指定的加載因子。接口
4.構造一個包含指定集合中元素的新集合。同步
類裏面只有兩個屬性字段 HashMap<E,Object> map和Object PRESENTio
不少的方法,都是使用的HashMap裏面的方法,去找找有沒有寫的特殊一點的方法。map
這個是用了map的key的特性,還存入一個PRESENT對象。迭代器
對於size ()和isEmpty(),也能夠直接看到是map的方法
對於數據的刪除和清空也是相似的。
而後看看迭代器的獲取