Java中TreeSet descendingSet()方法及示例

Java中TreeSet descendingSet()方法及示例

java.util.TreeSet ** 类的 **descendingSet() 方法用于返回该集合中元素的按相反顺序排序的视图。降序集合由此集合支持,因此对集合的更改会反映在降序集合中,反之亦然。但是,如果在迭代任一集合时修改任一集合(除非通过迭代器自己的remove操作),则迭代的结果未定义。
返回的集合的排序等同于Collections.reverseOrder(comparator())。表达式s.descendingSet().DescendingSet()返回与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<String> treeadd = new TreeSet<String>();
 
            // 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<String>
                treereverse = treeadd.descendingSet();
 
            // getting iterated view of NavigableSet
            Iterator<String> iterator = treereverse.iterator();
 
            System.out.println("\nValues using DescendingSet:");
 
            // printing the integrated 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程序演示
// Integer值的descendingSet()方法
 
import java.util.*;
 
public class GFG1 {
    public static void main(String[] argv) throws Exception
    {
        try {
 
            // 创建树集对象
            TreeSet<Integer> treeadd = new TreeSet<Integer>();
 
            // 使用add()方法填充TreeSet
            treeadd.add(10);
            treeadd.add(20);
            treeadd.add(30);
            treeadd.add(40);
 
            // 获取元素的反序视图
            // 使用descendingSet()方法
            NavigableSet<Integer> treereverse = treeadd.descendingSet();
 
            // 获取NavigableSet的遍历视图
            Iterator<Integer> iterator = treereverse.iterator();
 
            System.out.println("\n使用DescendingSet输出结果:");
 
            // 打印遍历集合的值
            while (iterator.hasNext()) {
                System.out.println("Value : " + iterator.next());
            }
        }
 
        catch (NullPointerException e) {
 
            System.out.println("Exception thrown : " + e);
        }
    }
}

输出结果:

使用DescendingSet输出结果:
Value : 40
Value : 30
Value : 20
Value : 10

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程