TreeSet是Java集合框架中的一个类,它实现了SortedSet接口,底层使用红黑树实现,可以实现有序的插入和遍历。
TreeSet的特点:
TreeSet中的元素是有序的,默认按照升序排序,也可以通过Comparator自定义排序方式。
TreeSet中的元素是唯一的,不允许有重复元素。
插入和删除元素的时间复杂度为O(logN),查找元素的时间复杂度也为O(logN)。
TreeSet的常用方法:
add(E e):向TreeSet中添加元素。
remove(Object o):从TreeSet中删除指定元素。
contains(Object o):判断TreeSet中是否包含指定元素。
iterator():返回TreeSet的迭代器,用于遍历元素。
first():返回TreeSet中的第一个元素。
last():返回TreeSet中的最后一个元素。
使用示例:
import java.util.TreeSet;
public class TreeSetExample {
public static void main(String[] args) {
TreeSet<Integer> treeSet = new TreeSet<>();
// 添加元素
treeSet.add(5);
treeSet.add(2);
treeSet.add(8);
treeSet.add(1);
treeSet.add(4);
// 遍历元素
for (Integer num : treeSet) {
System.out.println(num);
}
// 删除元素
treeSet.remove(2);
// 判断元素是否存在
System.out.println(treeSet.contains(4));
// 获取第一个元素和最后一个元素
System.out.println(treeSet.first());
System.out.println(treeSet.last());
}
}
输出结果:
1
2
4
5
8
true
1
8
在上面的示例中,我们创建了一个TreeSet对象,并向其中添加了一些整数元素。由于TreeSet会进行排序和去重,所以打印出的结果是有序且没有重复的。我们还演示了删除元素、判断元素是否存在以及获取第一个和最后一个元素的操作。