HashSet:
元素唯一不能重复
底层结构是 哈希表结构
元素的存与取的顺序不能保证一致
如何保证元素的唯一的?
重写hashCode() 与 equals()方法
LinkedHashSet:
元素唯一不能重复
底层结构是 哈希表结构 + 链表结构
元素的存与取的顺序一致
如何保证元素的唯一与有序的?
元素唯一: 哈希表结构保证的
元素有序: 链表结构保证的
TreeSet:
元素唯一不能重复
底层结构是 二叉树结构
元素的存与取的顺序不能保证一致
但是,在集合内部进行了元素的排序【自然排序,比较器排序】
自然排序接口 Comparable<T>
实现方法 public abstract int compareTo(T obj);
比较器排序接口 Comparator<T>
实现方法 public abstract int compare(T obj1, T obj2);
TreeSet集合是如何保证元素唯一并有序的?
自然排序接口 Comparable<T>
比较器排序接口 Comparator<T> |
|