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) |
返回一个SortedSet 对象,其中包含start 至end-1 之间的元素。返回集合中的元素也是调用对象引用。 |
6 | SortedSet tailSet(Object start) |
返回一个SortedSet 对象,其中包含有序集合中包含的大于或等于start 的元素。返回集中的元素也是调用对象引用。 |
示例
SortedSet
由TreeSet
等各种类实现。以下是TreeSet
类的示例 -
import java.util.*;
public class SortedSetTest {
public static void main(String[] args) {
// Create the sorted set
SortedSet set = new TreeSet();
// 添加元素到集合中
set.add("b");
set.add("c");
set.add("a");
// 迭代每个元素
Iterator it = set.iterator();
while (it.hasNext()) {
// Get element
Object element = it.next();
System.out.println(element.toString());
}
}
}
执行上面示例代码,得到以下结果 -
a
b
c