SortedSet 接口扩展了 Set 并声明了按升序排序的集合的行为。除了 Set 定义的方法之外,SortedSet 接口还声明下表中总结的方法
当调用集合中不包含任何项时,有几个方法会抛出 NoSuchElementException。当对象与集合中的元素不兼容时,将引发 ClassCastException。
如果尝试使用 null 对象且集合中不允许使用 null,则会引发 NullPointerException。
序号 | 方法 &描述 |
---|---|
1 | Comparator comparator( ) 返回调用排序集的比较器。如果该集合使用自然排序,则返回 null。 |
2 | Object first( ) 返回调用排序集中的第一个元素。 |
3 | SortedSet headSet(Object end) 返回一个 SortedSet,其中包含调用排序集中包含的小于 end 的元素。返回的排序集中的元素也由调用排序集引用。 |
4 | Object last( ) 返回调用排序集中的最后一个元素。 |
5 | SortedSet subSet(Object start, Object end) 返回包含 start 和 end 之间的元素的 SortedSet。1。返回集合中的元素也由调用对象引用。 |
6 | SortedSet tailSet(Object start ) 返回一个 SortedSet,其中包含大于或等于排序集中包含的 start 的元素。返回集中的元素也由调用对象引用。 |
示例 1
SortedSet 的实现位于各种类,如 TreeSet。以下是具有添加操作的 TreeSet 类的示例 -
import java.util.Iterator;
import java.util.SortedSet;
import java.util.TreeSet;
public class SortedSetDemo {
public static void main(String[] args) {
// 创建有序集
SortedSet<String> set = new TreeSet<>();
//向集合中添加元素
set.add("b");
set.add("c");
set.add("a");
// 迭代集合中的元素
Iterator it = set.iterator();
while (it.hasNext()) {
//获取元素
Object element = it.next();
System.out.println(element.toString());
}
}
}
输出
a
b
c
示例 2
SortedSet 在 TreeSet 等各种类中都有其实现。以下是具有添加和删除操作的 TreeSet 类的示例 -
import java.util.Iterator;
import java.util.SortedSet;
import java.util.TreeSet;
public class SortedSetDemo {
public static void main(String[] args) {
// 创建排序集
SortedSet<String> set = new TreeSet<>();
//向集合中添加元素
set.add("b");
set.add("c");
set.add("a");
set.add("d");
set.add("e");
set.add("f");
//删除元素
set.remove("c");
set.remove("f");
// 迭代集合中的元素
Iterator it = set.iterator();
while (it.hasNext()) {
//获取元素
Object element = it.next();
System.out.println(element.toString());
}
}
}
输出
a
b
d
e
示例 3
SortedSet 在 TreeSet 等各种类中都有其实现。以下是具有添加和清除操作的 TreeSet 类的示例 -
import java.util.Iterator;
import java.util.SortedSet;
import java.util.TreeSet;
public class SortedSetDemo {
public static void main(String[] args) {
// 创建排序集
SortedSet<String> set = new TreeSet<>();
//向集合中添加元素
set.add("b");
set.add("c");
set.add("a");
set.add("d");
set.add("e");
set.add("f");
System.out.println(set);
//删除元素
set.clear();
System.out.println(set);
}
}
输出
[a, b, c, d, e, f]
[]