一、TreeSet定义
HashSet在java.util.TreeSet中定义。
TreeSet是一个有序的集合,它的作用是提供有序的Set集合。它继承了AbstractSet抽象类,实现了NavigableSet
1.TreeSet继承于AbstractSet,并且实现了NavigableSet接口。
2.TreeSet是一个包含有序的且没有重复元素的集合,通过TreeMap实现。TreeSet中含有一个"NavigableMap类型的成员变量"m,而m实际上是"TreeMap的实例"。
public class TreeSet<E> extends AbstractSet<E>
implements NavigableSet<E>, Cloneable, java.io.Serializable {
.....
private transient NavigableMap<E,Object> m;
.....
}
在构造方法中初始化m如下:
public TreeSet() {
this(new TreeMap<E,Object>());
}
二、HashSet的常用方法
1. 构造方法
public TreeSet() {
this(new TreeMap<E,Object>());
}
public TreeSet(Comparator<? super E> comparator)
public TreeSet(Collection<? extends E> c)
public TreeSet(SortedSet<E> s)
其他方法同Set接口中方法声明。