1.HashSet的底层实现原理:(哈希表实现,最佳通用实现)
HashSet底层是通过HashMap实现的,构造函数,构造HashSet的时候底层就构造了一个HashMap
public HashSet() {
map = new HashMap<>();
}
private static final Object PRESENT = new Object();
public boolean add(E e) {
return map.put(e, PRESENT)==null;
}
add的时候调用map的put方法,value始终是PRESENT。
2.TreeSet(红黑树实现,升序排列,元素所属的类型要实现Comparable或者Comparator接口)
3.LinkedList(哈希链表实现,插入的顺序,保留插入的顺序)