java中java.util.TreeSet介绍及使用
java.util.TreeSet是依靠TreeMap来实现的。
TreeSet是一个有序集合,TreeSet中的元素将按照升序排列,缺省是按照自然排序进行排列,意味着TreeSet中的元素要实现Comparable接口。或者有一个自定义的比较器。我们可以在构造TreeSet对象时,传递实现Comparator接口的比较器对象。
TreeSet主要包括add(),size(),first(),last(),remove()等方法
TreeSet的使用的详细代码如下:
import java.util.Iterator;
import java.util.TreeSet;
public class TreeSetExample {
public static void main(String[] args) {
TreeSettreeSetData = new TreeSet();
treeSetData.add("C");
treeSetData.add("B");
treeSetData.add("A");
treeSetData.add("E");
treeSetData.add("D");
for(String data: treeSetData){
System.out.println("-" + data);
}
System.out.println("TreeSet的大小:" + treeSetData.size());
System.out.println("TreeSet中第一个元素: " + treeSetData.first());
System.out.println("TreeSet中最后一个元素: " + treeSetData.last());
System.out.println("删除元素'D'...");
treeSetData.remove("D");
System.out.println("TreeSet新的大小:" + treeSetData.size());
//iterating by iterator
Iteratori = treeSetData.iterator();
while (i.hasNext()) {
String s = i.next();
System.out.println("-" + s);
}
System.out.println("Set contains object 'B'? "
+ treeSetData.contains("B"));
System.out.println("删除所有的元素");
treeSetData.clear();
System.out.println("判断TreeSet是否为空? " + treeSetData.isEmpty());
//allows null value
treeSetData.add(null);
}
}
//输出结果如下: -A
-B
-C
-D
-E
TreeSet的大小:5
TreeSet中第一个元素: A
TreeSet中最后一个元素: E
删除元素'D'...
TreeSet新的大小:4
-A
-B
-C
-E
Set contains object 'B'? true
删除所有的元素
判断TreeSet是否为空? true