java.util.TreeSet类的descendingSet()方法用于返回此集合中包含的元素的逆序视图。降序集由该集支持,因此对该集的更改会反映在降序集中,反之亦然。如果在进行任何一个集合的迭代时修改了任何一个集合(通过迭代器自己的remove操作除外),则迭代的结果是不确定的。
返回的集合的排序与Collections.reverseOrder(comparator())等效。表达式s.descendingSet().descendingSet()返回s的视图,该视图与s基本等效。
用法:
public NavigableSet descendingSet()
返回值:此方法返回此集合的逆序视图。
以下示例说明了descendingSet()方法
示例1:
// Java program to demonstrate
// descendingSet() method
// for String value
import java.util.*;
public class GFG1 {
public static void main(String[] argv)
throws Exception
{
try {
// create tree set object
TreeSet treeadd = new TreeSet();
// populate the TreeSet using add() method
treeadd.add("A");
treeadd.add("B");
treeadd.add("C");
treeadd.add("D");
// Print the TreeSet
System.out.println("TreeSet: " + treeadd);
// getting the reverse order view of element
// using descendingSet() method
NavigableSet
treereverse = treeadd.descendingSet();
// getting iterated view of NavigableSet
Iterator iterator = treereverse.iterator();
System.out.println("\nValues using DescendingSet:");
// printing the interated value
while (iterator.hasNext()) {
System.out.println("Value : "
+ iterator.next());
}
}
catch (NullPointerException e) {
System.out.println("Exception thrown : " + e);
}
}
}
输出:
TreeSet: [A, B, C, D]
Values using DescendingSet:
Value : D
Value : C
Value : B
Value : A
示例2:
// Java program to demonstrate
// descendingSet() method
// for Integer value
import java.util.*;
public class GFG1 {
public static void main(String[] argv) throws Exception
{
try {
// create tree set object
TreeSet treeadd = new TreeSet();
// populate the TreeSet using add() method
treeadd.add(10);
treeadd.add(20);
treeadd.add(30);
treeadd.add(40);
// getting the reverse order view of element
// using descendingSet() method
NavigableSet treereverse = treeadd.descendingSet();
// getting iterated view of NavigableSet
Iterator iterator = treereverse.iterator();
System.out.println("\nValues using DescendingSet:");
// printing the interated value
while (iterator.hasNext()) {
System.out.println("Value : " + iterator.next());
}
}
catch (NullPointerException e) {
System.out.println("Exception thrown : " + e);
}
}
}
输出:
Values using DescendingSet:
Value : 40
Value : 30
Value : 20
Value : 10